-
Notifications
You must be signed in to change notification settings - Fork 2.2k
New issue
Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? # to your account
MSVC 2015U3 compile error in tvec4<T, P>::tvec4(ctor) #555
Comments
You don't need to initialize all members, just one will suffice. |
This issue should be fixed in GLM 0.9.8 and master branches. Thanks for reporting, |
Unfortunately, this issue is still there - the referenced commit only fixes #555, but not this ticket. |
Could you please reopen the issue? |
Could you use #define GLM_FORCE_MESSAGES, build and copy paste the information GLM returns? Thanks, |
1> GLM: Windows platform detected |
Do you have a simple code sample to repro? |
How do you get GLM: C++11? Visual C++ 2015 is not fully C++11 compatible and should return C++0x. |
… known to not fully support the requested C++ version #555
This issue should be fixed in GLM 0.9.8 and master branches. I think you are using GLM_FORCE_CXX11 in your code with Visual C++ however Visual C++ doesn't fully support C++11. By default GLM will automatically detect the compiler and its version to use only the feature set supported by the compiler. Using GLM_FORCE_CXX11, you override this system to use the C++11 features. Thanks, |
When updating GLM from 0.9.7.6 to 0.9.8.1, the following compile error occurs in MSVC 2015U3:
c:\devel\videosdk\vcsmm\include\glm\detail\type_vec4.inl(182): error C2476: 'constexpr' constructor does not initialize all members 1> c:\devel\videosdk\vcsmm\include\glm\detail/type_vec4.hpp(42): note: 'glm::tvec4<float,glm::aligned_lowp>::<unnamed-tag>::x' was not initialized by the constructor 1> c:\devel\videosdk\vcsmm\include\glm\detail/type_vec4.hpp(42): note: 'glm::tvec4<float,glm::aligned_lowp>::<unnamed-tag>::y' was not initialized by the constructor 1> c:\devel\videosdk\vcsmm\include\glm\detail/type_vec4.hpp(42): note: 'glm::tvec4<float,glm::aligned_lowp>::<unnamed-tag>::z' was not initialized by the constructor 1> c:\devel\videosdk\vcsmm\include\glm\detail/type_vec4.hpp(42): note: 'glm::tvec4<float,glm::aligned_lowp>::<unnamed-tag>::w' was not initialized by the constructor 1> c:\devel\videosdk\vcsmm\include\glm\detail/type_vec4.hpp(43): note: 'glm::tvec4<float,glm::aligned_lowp>::<unnamed-tag>::r' was not initialized by the constructor 1> c:\devel\videosdk\vcsmm\include\glm\detail/type_vec4.hpp(43): note: 'glm::tvec4<float,glm::aligned_lowp>::<unnamed-tag>::g' was not initialized by the constructor 1> c:\devel\videosdk\vcsmm\include\glm\detail/type_vec4.hpp(43): note: 'glm::tvec4<float,glm::aligned_lowp>::<unnamed-tag>::b' was not initialized by the constructor 1> c:\devel\videosdk\vcsmm\include\glm\detail/type_vec4.hpp(43): note: 'glm::tvec4<float,glm::aligned_lowp>::<unnamed-tag>::a' was not initialized by the constructor 1> c:\devel\videosdk\vcsmm\include\glm\detail/type_vec4.hpp(44): note: 'glm::tvec4<float,glm::aligned_lowp>::<unnamed-tag>::s' was not initialized by the constructor 1> c:\devel\videosdk\vcsmm\include\glm\detail/type_vec4.hpp(44): note: 'glm::tvec4<float,glm::aligned_lowp>::<unnamed-tag>::t' was not initialized by the constructor 1> c:\devel\videosdk\vcsmm\include\glm\detail/type_vec4.hpp(44): note: 'glm::tvec4<float,glm::aligned_lowp>::<unnamed-tag>::p' was not initialized by the constructor 1> c:\devel\videosdk\vcsmm\include\glm\detail/type_vec4.hpp(44): note: 'glm::tvec4<float,glm::aligned_lowp>::<unnamed-tag>::q' was not initialized by the constructor 1> c:\devel\videosdk\vcsmm\include\glm\detail/type_vec4.hpp(46): note: 'glm::tvec4<float,glm::aligned_lowp>::data' was not initialized by the constructor 1> c:\devel\videosdk\vcsmm\include\glm\detail\type_vec4.inl(183): note: while compiling class template member function 'glm::tvec4<float,glm::aligned_lowp>::tvec4(glm::ctor)' 1> c:\devel\videosdk\vcsmm\include\glm\detail\type_vec4_simd.inl(155): note: see reference to function template instantiation 'glm::tvec4<float,glm::aligned_lowp>::tvec4(glm::ctor)' being compiled 1> c:\devel\videosdk\vcsmm\include\glm\detail\type_vec4_simd.inl(154): note: see reference to class template instantiation 'glm::tvec4<float,glm::aligned_lowp>' being compiled
Adding a default ctor call for all element fixes the issue:
The text was updated successfully, but these errors were encountered: