mirror of
				https://github.com/Drezil/imgui.git
				synced 2025-10-31 21:21:06 +01:00 
			
		
		
		
	Clang: Reduce uses of __has_warning for overall sanity, as compilers are hostile to software targetting multiple compiler version.
This commit is contained in:
		| @@ -57,25 +57,19 @@ Index of this file: | ||||
|  | ||||
| // Clang/GCC warnings with -Weverything | ||||
| #if defined(__clang__) | ||||
| #if __has_warning("-Wunknown-warning-option") | ||||
| #pragma clang diagnostic ignored "-Wunknown-warning-option"         // warning: unknown warning group 'xxx'                      // not all warnings are known by all Clang versions and they tend to be rename-happy.. so ignoring warnings triggers new warnings on some configuration. Great! | ||||
| #endif | ||||
| #pragma clang diagnostic ignored "-Wunknown-pragmas"                // warning: unknown warning group 'xxx' | ||||
| #pragma clang diagnostic ignored "-Wold-style-cast"                 // warning: use of old-style cast                            // yes, they are more terse. | ||||
| #pragma clang diagnostic ignored "-Wfloat-equal"                    // warning: comparing floating point with == or != is unsafe // storing and comparing against same constants ok. | ||||
| #pragma clang diagnostic ignored "-Wglobal-constructors"            // warning: declaration requires a global destructor         // similar to above, not sure what the exact difference is. | ||||
| #pragma clang diagnostic ignored "-Wsign-conversion"                // warning: implicit conversion changes signedness | ||||
| #if __has_warning("-Wzero-as-null-pointer-constant") | ||||
| #pragma clang diagnostic ignored "-Wzero-as-null-pointer-constant"  // warning: zero as null pointer constant                    // some standard header variations use #define NULL 0 | ||||
| #endif | ||||
| #if __has_warning("-Wcomma") | ||||
| #pragma clang diagnostic ignored "-Wcomma"                          // warning: possible misuse of comma operator here | ||||
| #endif | ||||
| #if __has_warning("-Wreserved-id-macro") | ||||
| #pragma clang diagnostic ignored "-Wreserved-id-macro"              // warning: macro name is a reserved identifier | ||||
| #endif | ||||
| #if __has_warning("-Wdouble-promotion") | ||||
| #pragma clang diagnostic ignored "-Wdouble-promotion"               // warning: implicit conversion from 'float' to 'double' when passing argument to function  // using printf() is a misery with this as C++ va_arg ellipsis changes float to double. | ||||
| #endif | ||||
| #if __has_warning("-Wimplicit-int-float-conversion") | ||||
| #pragma clang diagnostic ignored "-Wimplicit-int-float-conversion"  // warning: implicit conversion from 'xxx' to 'float' may lose precision | ||||
| #endif | ||||
| #elif defined(__GNUC__) | ||||
| #pragma GCC diagnostic ignored "-Wpragmas"                  // warning: unknown option after '#pragma GCC diagnostic' kind | ||||
| #pragma GCC diagnostic ignored "-Wunused-function"          // warning: 'xxxx' defined but not used | ||||
|   | ||||
		Reference in New Issue
	
	Block a user