|
 |
On 12/17/2021 10:31 AM, Alessio Sangalli wrote:
> Hello, what C++ version does the POV-Ray community want to target for
> the future? I see POV_CPP11_SUPPORTED that as far as I were able to
> understand is only used to define POVMS_NULLPTR, but older compilers are
> supported too anyway.
>
> Is there any reason to continue to support compilers older than C++11?
> If we could just assume C++11 (or better, C++17) several sections of the
> code could be rewritten to take advantage of new features of the
> anguage. For example, I'd start with using constexpr instead of #define
> in a lot of cases; kinda of a low hanging fruit, but type checking for
> constants is in my opinion worth having in the 2020's.
>
For what it's worth...
Visual Studio 2022 (or VS 17.x if you prefer) works fine, you only have
to do this:
- Modify the BUILT_BY macro and comment out the related #error line in
base/build.h like usual (if you haven't already).
- Comment out the inheritance of std::binary_function for the
NameCompare struct in libraries/openexr/lmImf/mfAttribute.cpp
since std::binary_function is deprecated. Should be near line 65.
- In syspovconfig_msvc.h, add something like this to its list of MSVC
toolchain definitions:
#elif _MSC_VER >= 1940 && _MSC_VER < 1950
#define POV_COMPILER_VER "msvc143"
#define METADATA_COMPILER_STRING "msvc 14.31"
#define POV_CPP11_SUPPORTED 1
Ray Gardener
Post a reply to this message
|
 |