mirror of
				https://github.com/Drezil/imgui.git
				synced 2025-10-31 21:21:06 +01:00 
			
		
		
		
	Removed support for pre-C++11 compilers. We'll stop supporting VS2010. (#4537)
Build all
This commit is contained in:
		| @@ -37,6 +37,7 @@ HOW TO UPDATE? | ||||
|  | ||||
| Breaking Changes: | ||||
|  | ||||
| - Removed support for pre-C++11 compilers. We'll stop supporting VS2010. (#4537) | ||||
| - Reworked IO keyboard input system. (#2625, #3724) [@thedmd, @ocornut] | ||||
|   - Added io.AddKeyEvent() function, obsoleting writing directly to io.KeyMap[], io.KeysDown[] arrays. | ||||
|   - Added io.AddKeyModsEvent() function, obsoleting writing directly to io.KeyCtrl, io.KeyShift etc. | ||||
|   | ||||
							
								
								
									
										17
									
								
								imgui.h
									
									
									
									
									
								
							
							
						
						
									
										17
									
								
								imgui.h
									
									
									
									
									
								
							| @@ -86,11 +86,7 @@ Index of this file: | ||||
| #endif | ||||
| #define IM_ARRAYSIZE(_ARR)          ((int)(sizeof(_ARR) / sizeof(*(_ARR))))     // Size of a static C-style array. Don't use on pointers! | ||||
| #define IM_UNUSED(_VAR)             ((void)(_VAR))                              // Used to silence "unused variable warnings". Often useful as asserts may be stripped out from final builds. | ||||
| #if (__cplusplus >= 201100) || (defined(_MSVC_LANG) && _MSVC_LANG >= 201100) | ||||
| #define IM_OFFSETOF(_TYPE,_MEMBER)  offsetof(_TYPE, _MEMBER)                    // Offset of _MEMBER within _TYPE. Standardized as offsetof() in C++11 | ||||
| #else | ||||
| #define IM_OFFSETOF(_TYPE,_MEMBER)  ((size_t)&(((_TYPE*)0)->_MEMBER))           // Offset of _MEMBER within _TYPE. Old style macro. | ||||
| #endif | ||||
|  | ||||
| // Helper Macros - IM_FMTARGS, IM_FMTLIST: Apply printf-style warnings to our formatting functions. | ||||
| #if !defined(IMGUI_USE_STB_SPRINTF) && defined(__MINGW32__) && !defined(__clang__) | ||||
| @@ -228,17 +224,8 @@ typedef signed short        ImS16;  // 16-bit signed integer | ||||
| typedef unsigned short      ImU16;  // 16-bit unsigned integer | ||||
| typedef signed int          ImS32;  // 32-bit signed integer == int | ||||
| typedef unsigned int        ImU32;  // 32-bit unsigned integer (often used to store packed colors) | ||||
| #if defined(_MSC_VER) && !defined(__clang__) | ||||
| typedef signed   __int64    ImS64;  // 64-bit signed integer (pre and post C++11 with Visual Studio) | ||||
| typedef unsigned __int64    ImU64;  // 64-bit unsigned integer (pre and post C++11 with Visual Studio) | ||||
| #elif (defined(__clang__) || defined(__GNUC__)) && (__cplusplus < 201100) | ||||
| #include <stdint.h> | ||||
| typedef int64_t             ImS64;  // 64-bit signed integer (pre C++11) | ||||
| typedef uint64_t            ImU64;  // 64-bit unsigned integer (pre C++11) | ||||
| #else | ||||
| typedef signed   long long  ImS64;  // 64-bit signed integer (post C++11) | ||||
| typedef unsigned long long  ImU64;  // 64-bit unsigned integer (post C++11) | ||||
| #endif | ||||
| typedef signed   long long  ImS64;  // 64-bit signed integer (C++11) | ||||
| typedef unsigned long long  ImU64;  // 64-bit unsigned integer (C++11) | ||||
|  | ||||
| // Character types | ||||
| // (we generally use UTF-8 encoded string in the API. This is storage specifically for a decoded character used for keyboard input and display) | ||||
|   | ||||
| @@ -92,6 +92,7 @@ Index of this file: | ||||
|  | ||||
| // Visual Studio warnings | ||||
| #ifdef _MSC_VER | ||||
| #pragma warning (disable: 4127)     // condition expression is constant | ||||
| #pragma warning (disable: 4996)     // 'This function or variable may be unsafe': strcpy, strdup, sprintf, vsnprintf, sscanf, fopen | ||||
| #pragma warning (disable: 26451)    // [Static Analyzer] Arithmetic overflow : Using operator 'xxx' on a 4 byte value and then casting the result to a 8 byte value. Cast the value to the wider type before calling operator 'xxx' to avoid overflow(io.2). | ||||
| #endif | ||||
|   | ||||
| @@ -203,11 +203,7 @@ namespace ImStb | ||||
| #define IMGUI_DEBUG_LOG_NAV(...)        ((void)0)       // Disable log | ||||
|  | ||||
| // Static Asserts | ||||
| #if (__cplusplus >= 201100) || (defined(_MSVC_LANG) && _MSVC_LANG >= 201100) | ||||
| #define IM_STATIC_ASSERT(_COND)         static_assert(_COND, "") | ||||
| #else | ||||
| #define IM_STATIC_ASSERT(_COND)         typedef char static_assertion_##__line__[(_COND)?1:-1] | ||||
| #endif | ||||
|  | ||||
| // "Paranoid" Debug Asserts are meant to only be enabled during specific debugging/work, otherwise would slow down the code too much. | ||||
| // We currently don't have many of those so the effect is currently negligible, but onward intent to add more aggressive ones in the code. | ||||
|   | ||||
		Reference in New Issue
	
	Block a user