mirror of
				https://github.com/encounter/SDL.git
				synced 2025-10-27 12:10:24 +00:00 
			
		
		
		
	use _Static_assert for SDL_COMPILE_TIME_ASSERT(), when available
This commit is contained in:
		
							parent
							
								
									dfbe1f7248
								
							
						
					
					
						commit
						f0d2747df1
					
				| @ -354,8 +354,14 @@ typedef uint64_t Uint64; | |||||||
| #endif | #endif | ||||||
| #endif /* SDL_DISABLE_ANALYZE_MACROS */ | #endif /* SDL_DISABLE_ANALYZE_MACROS */ | ||||||
| 
 | 
 | ||||||
|  | #if defined(__STDC_VERSION__) && (__STDC_VERSION__ >= 201112L) | ||||||
|  | #define SDL_COMPILE_TIME_ASSERT(name, x) _Static_assert(x, #x); | ||||||
|  | #elif defined(__cplusplus) && (__cplusplus >= 201103L) | ||||||
|  | #define SDL_COMPILE_TIME_ASSERT(name, x)  static_assert(x, #x); | ||||||
|  | #else /* universal, but may trigger -Wunused-local-typedefs */ | ||||||
| #define SDL_COMPILE_TIME_ASSERT(name, x)               \ | #define SDL_COMPILE_TIME_ASSERT(name, x)               \ | ||||||
|        typedef int SDL_compile_time_assert_ ## name[(x) * 2 - 1] |        typedef int SDL_compile_time_assert_ ## name[(x) * 2 - 1] | ||||||
|  | #endif | ||||||
| /** \cond */ | /** \cond */ | ||||||
| #ifndef DOXYGEN_SHOULD_IGNORE_THIS | #ifndef DOXYGEN_SHOULD_IGNORE_THIS | ||||||
| SDL_COMPILE_TIME_ASSERT(uint8, sizeof(Uint8) == 1); | SDL_COMPILE_TIME_ASSERT(uint8, sizeof(Uint8) == 1); | ||||||
|  | |||||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user