Skip to content

specify language standard for MSVC

the-very requested to merge github/fork/aldhinn/master into master

Created by: aldhinn

I added a specific flag for MSVC to enforce C++ 17 standards since I was getting these errors:

[build] FastIntrinsics.h(47): error C2429: language feature 'terse static assert' requires compiler flag '/std:c++17' [build] FastIntrinsics.h(112): error C7525: inline variables require at least '/std:c++17' [build] FastIntrinsics.h(112): error C2127: 'NFastOps::NFastOpsDetail::constexpr_mm256_castsi256_ps': illegal initialization of 'constexpr' entity with a non-constant expression [build] FastIntrinsics.h(112): note: failure was because type 'NFastOps::NFastOpsDetail::<lambda_bb269d46282e52d2c49dfae927f71ca2>' is not a literal type [build] FastIntrinsics.h(112): note: type 'NFastOps::NFastOpsDetail::<lambda_bb269d46282e52d2c49dfae927f71ca2>' is not a literal type because it is not an aggregate type, a closure type, or does not have a constexpr constructor that is not a copy or move constructor [build] FastIntrinsics.h(113): error C7525: inline variables require at least '/std:c++17' [build] FastIntrinsics.h(113): error C2127: 'NFastOps::NFastOpsDetail::constexpr_mm256_castps_si256': illegal initialization of 'constexpr' entity with a non-constant expression [build] FastIntrinsics.h(113): note: failure was because type 'NFastOps::NFastOpsDetail::<lambda_ffd0e14c71fc7615c54dd9a43d93c979>' is not a literal type [build] FastIntrinsics.h(113): note: type 'NFastOps::NFastOpsDetail::<lambda_ffd0e14c71fc7615c54dd9a43d93c979>' is not a literal type because it is not an aggregate type, a closure type, or does not have a constexpr constructor that is not a copy or move constructor [build] FastIntrinsics.h(114): error C7525: inline variables require at least '/std:c++17' [build] FastIntrinsics.h(114): error C2127: 'NFastOps::NFastOpsDetail::constexpr_mm256_castsi256_pd': illegal initialization of 'constexpr' entity with a non-constant expression [build] FastIntrinsics.h(114): note: failure was because type 'NFastOps::NFastOpsDetail::<lambda_1e6730597ebbadf8d7e0ae388ca0da80>' is not a literal type [build] FastIntrinsics.h(114): note: type 'NFastOps::NFastOpsDetail::<lambda_1e6730597ebbadf8d7e0ae388ca0da80>' is not a literal type because it is not an aggregate type, a closure type, or does not have a constexpr constructor that is not a copy or move constructor [build] FastIntrinsics.h(115): error C7525: inline variables require at least '/std:c++17' [build] FastIntrinsics.h(115): error C2127: 'NFastOps::NFastOpsDetail::constexpr_mm256_castpd_si256': illegal initialization of 'constexpr' entity with a non-constant expression [build] FastIntrinsics.h(115): note: failure was because type 'NFastOps::NFastOpsDetail::<lambda_567c6220412c4b61d1e6b74a1f9f6e7b>' is not a literal type [build] FastIntrinsics.h(115): note: type 'NFastOps::NFastOpsDetail::<lambda_567c6220412c4b61d1e6b74a1f9f6e7b>' is not a literal type because it is not an aggregate type, a closure type, or does not have a constexpr constructor that is not a copy or move constructor [build] FastIntrinsics.h(124): error C2127: 'CastSi': illegal initialization of 'constexpr' entity with a non-constant expression [build] FastIntrinsics.h(112): note: failure was because type 'NFastOps::NFastOpsDetail::<lambda_bb269d46282e52d2c49dfae927f71ca2>' is not a literal type [build] FastIntrinsics.h(112): note: type 'NFastOps::NFastOpsDetail::<lambda_bb269d46282e52d2c49dfae927f71ca2>' is not a literal type because it is not an aggregate type, a closure type, or does not have a constexpr constructor that is not a copy or move constructor [build] FastIntrinsics.h(125): error C2127: 'CastPf': illegal initialization of 'constexpr' entity with a non-constant expression [build] FastIntrinsics.h(113): note: failure was because type 'NFastOps::NFastOpsDetail::<lambda_ffd0e14c71fc7615c54dd9a43d93c979>' is not a literal type [build] FastIntrinsics.h(113): note: type 'NFastOps::NFastOpsDetail::<lambda_ffd0e14c71fc7615c54dd9a43d93c979>' is not a literal type because it is not an aggregate type, a closure type, or does not have a constexpr constructor that is not a copy or move constructor [build] FastIntrinsics.h(186): error C2127: 'CastSi': illegal initialization of 'constexpr' entity with a non-constant expression [build] FastIntrinsics.h(114): note: failure was because type 'NFastOps::NFastOpsDetail::<lambda_1e6730597ebbadf8d7e0ae388ca0da80>' is not a literal type [build] FastIntrinsics.h(114): note: type 'NFastOps::NFastOpsDetail::<lambda_1e6730597ebbadf8d7e0ae388ca0da80>' is not a literal type because it is not an aggregate type, a closure type, or does not have a constexpr constructor that is not a copy or move constructor [build] FastIntrinsics.h(187): error C2127: 'CastPf': illegal initialization of 'constexpr' entity with a non-constant expression [build] FastIntrinsics.h(115): note: failure was because type 'NFastOps::NFastOpsDetail::<lambda_567c6220412c4b61d1e6b74a1f9f6e7b>' is not a literal type [build] FastIntrinsics.h(115): note: type 'NFastOps::NFastOpsDetail::<lambda_567c6220412c4b61d1e6b74a1f9f6e7b>' is not a literal type because it is not an aggregate type, a closure type, or does not have a constexpr constructor that is not a copy or move constructor

Merge request reports