-
Notifications
You must be signed in to change notification settings - Fork 231
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
GCC #pragma warning warnings #133
Comments
Patched and created pull pull requests for this; sbd1138-patch1 and sbd1138-patch2 |
For clang/LLVM and GNUC I generally just always use a bunch of disables including
That said, I can look at adding these specific edits. |
Yep, I also have various diagnostic ignored additions in my DirectXMath.h wrapper include. The pragma one is a bit of a special case, because it deals with a preprocessor warning, and thus doesn't really disable the warning due to the way GCC deals with the diagnostics/warnings in the compile phase (as you can see in my original post, it just changes the warning from "unknown pragma" to "ignoring unknown pragma"). It's a known GCC issue. |
When using DirectXMath with GCC, it generates a handful of warnings dealing with unguarded #pragma warning statements in the headers.
These are impossible to truly disable via
#pragma GCC diagnostic ignored "-Wunknown-pragmas"
as these are processed during the preprocessor stage, before GCC deals with warnings (see the output below).
Fortunately, these should be easy to fix by simply wrapping the pragma warnings in question with #if defined( _MSC_VER ) and/or the appropriate MSC version.
Warnings/locations below, (these are with trying the above ignored -Wunknown-pragmas):
DirectXMath.h(100): warning : ignoring #pragma warning [-Wunknown-pragmas]
DirectXMath.h(100): warning : 100 | #pragma warning(push)
DirectXMath.h(101): warning : ignoring #pragma warning [-Wunknown-pragmas]
DirectXMath.h(105): warning : ignoring #pragma warning [-Wunknown-pragmas]
DirectXMath.h(105): warning : 105 | #pragma warning(pop)
DirectXMath.h(149): warning : ignoring #pragma warning [-Wunknown-pragmas]
DirectXMath.h(149): warning : 149 | #pragma warning(push)
DirectXMath.h(150): warning : ignoring #pragma warning [-Wunknown-pragmas]
DirectXMath.h(153): warning : ignoring #pragma warning [-Wunknown-pragmas]
DirectXMath.h(153): warning : 153 | #pragma warning(pop)
DirectXMath.h(315): warning : ignoring #pragma warning [-Wunknown-pragmas]
DirectXMath.h(315): warning : 315 | #pragma warning(push)
DirectXMath.h(316): warning : ignoring #pragma warning [-Wunknown-pragmas]
DirectXMath.h(1001): warning : ignoring #pragma warning [-Wunknown-pragmas]
DirectXMath.h(1001): warning : 1001 | #pragma warning(pop)
DirectXMath.h(2120): warning : ignoring #pragma warning [-Wunknown-pragmas]
DirectXMath.h(2120): warning : 2120 | #pragma warning(push)
DirectXMath.h(2121): warning : ignoring #pragma warning [-Wunknown-pragmas]
DirectXMathConvert.inl(20): warning : ignoring #pragma warning [-Wunknown-pragmas]
DirectXMathConvert.inl(20): warning : 20 | #pragma warning(push)
DirectXMathConvert.inl(21): warning : ignoring #pragma warning [-Wunknown-pragmas]
DirectXMathConvert.inl(221): warning : ignoring #pragma warning [-Wunknown-pragmas]
DirectXMathConvert.inl(221): warning : 221 | #pragma warning(pop)
DirectXMath.h(2242): warning : ignoring #pragma warning [-Wunknown-pragmas]
DirectXMath.h(2242): warning : 2242 | #pragma warning(pop)
The text was updated successfully, but these errors were encountered: