mirror of
				https://github.com/ocornut/imgui.git
				synced 2025-11-04 09:44:29 +00:00 
			
		
		
		
	Disabled latest overzealous warnings from Clang
This commit is contained in:
		@@ -870,7 +870,7 @@ CODE
 | 
			
		||||
#pragma clang diagnostic ignored "-Wformat-nonliteral"              // warning: format string is not a string literal            // passing non-literal to vsnformat(). yes, user passing incorrect format strings can crash the code.
 | 
			
		||||
#pragma clang diagnostic ignored "-Wexit-time-destructors"          // warning: declaration requires an exit-time destructor     // exit-time destruction order is undefined. if MemFree() leads to users code that has been disabled before exit it might cause problems. ImGui coding style welcomes static/globals.
 | 
			
		||||
#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             //
 | 
			
		||||
#pragma clang diagnostic ignored "-Wsign-conversion"                // warning: implicit conversion changes signedness
 | 
			
		||||
#pragma clang diagnostic ignored "-Wformat-pedantic"                // warning: format specifies type 'void *' but the argument has type 'xxxx *' // unreasonable, would lead to casting every %p arg to void*. probably enabled by -pedantic.
 | 
			
		||||
#pragma clang diagnostic ignored "-Wint-to-void-pointer-cast"       // warning: cast to 'void *' from smaller integer type 'int'
 | 
			
		||||
#if __has_warning("-Wzero-as-null-pointer-constant")
 | 
			
		||||
@@ -879,6 +879,9 @@ CODE
 | 
			
		||||
#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__)
 | 
			
		||||
// We disable -Wpragmas because GCC doesn't provide an has_warning equivalent and some forks/patches may not following the warning/version association.
 | 
			
		||||
#pragma GCC diagnostic ignored "-Wpragmas"                  // warning: unknown option after '#pragma GCC diagnostic' kind
 | 
			
		||||
 
 | 
			
		||||
@@ -98,6 +98,9 @@ Index of this file:
 | 
			
		||||
#if __has_warning("-Wreserved-id-macro")
 | 
			
		||||
#pragma clang diagnostic ignored "-Wreserved-id-macro"        // warning: macro name is a reserved identifier
 | 
			
		||||
#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 "-Wint-to-pointer-cast"        // warning: cast to pointer from integer of different size
 | 
			
		||||
 
 | 
			
		||||
@@ -60,19 +60,22 @@ Index of this file:
 | 
			
		||||
#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             //
 | 
			
		||||
#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             //
 | 
			
		||||
#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                //
 | 
			
		||||
#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
 | 
			
		||||
@@ -108,7 +111,7 @@ namespace IMGUI_STB_NAMESPACE
 | 
			
		||||
#pragma clang diagnostic ignored "-Wunused-function"
 | 
			
		||||
#pragma clang diagnostic ignored "-Wmissing-prototypes"
 | 
			
		||||
#pragma clang diagnostic ignored "-Wimplicit-fallthrough"
 | 
			
		||||
#pragma clang diagnostic ignored "-Wcast-qual"              // warning : cast from 'const xxxx *' to 'xxx *' drops const qualifier //
 | 
			
		||||
#pragma clang diagnostic ignored "-Wcast-qual"              // warning: cast from 'const xxxx *' to 'xxx *' drops const qualifier
 | 
			
		||||
#endif
 | 
			
		||||
 | 
			
		||||
#if defined(__GNUC__)
 | 
			
		||||
 
 | 
			
		||||
@@ -66,6 +66,9 @@ Index of this file:
 | 
			
		||||
#if __has_warning("-Wdouble-promotion")
 | 
			
		||||
#pragma clang diagnostic ignored "-Wdouble-promotion"
 | 
			
		||||
#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 push
 | 
			
		||||
#pragma GCC diagnostic ignored "-Wpragmas"              // warning: unknown option after '#pragma GCC diagnostic' kind
 | 
			
		||||
 
 | 
			
		||||
@@ -61,16 +61,22 @@ Index of this file:
 | 
			
		||||
#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 (typically 0.0f) is ok.
 | 
			
		||||
#pragma clang diagnostic ignored "-Wformat-nonliteral"              // warning: format string is not a string literal            // passing non-literal to vsnformat(). yes, user passing incorrect format strings can crash the code.
 | 
			
		||||
#pragma clang diagnostic ignored "-Wsign-conversion"        // warning : implicit conversion changes signedness             //
 | 
			
		||||
#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("-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("-Wenum-enum-conversion")
 | 
			
		||||
#pragma clang diagnostic ignored "-Wenum-enum-conversion"           // warning: bitwise operation between different enumeration types ('XXXFlags_' and 'XXXFlagsPrivate_')
 | 
			
		||||
#endif
 | 
			
		||||
#if __has_warning("-Wdeprecated-enum-enum-conversion")
 | 
			
		||||
#pragma clang diagnostic ignored "-Wdeprecated-enum-enum-conversion"// warning: bitwise operation between different enumeration types ('XXXFlags_' and 'XXXFlagsPrivate_') is deprecated
 | 
			
		||||
#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 "-Wformat-nonliteral"        // warning: format not a string literal, format string not checked
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user