Make simulator compile
This commit is contained in:
		@ -4,8 +4,14 @@
 | 
			
		||||
// This is wacky preprocessor magic that allows us to count the number of
 | 
			
		||||
// members of an enum. Unfortunately, it doesn't work with enum classes, so we
 | 
			
		||||
// have to use C-style enums.
 | 
			
		||||
 | 
			
		||||
// The preprocessor magic is so wacky we have to prevent GCC from failing with a
 | 
			
		||||
// -Werror=pedantic when compiling the simulator
 | 
			
		||||
#pragma GCC diagnostic ignored "-Wpedantic"
 | 
			
		||||
 | 
			
		||||
#define CountedEnum(NAME, TYPE, ...)                                           \
 | 
			
		||||
  typedef enum { __VA_ARGS__ } NAME;                                           \
 | 
			
		||||
  static const size_t NAME##_COUNT = sizeof((int[]){__VA_ARGS__}) / sizeof(int);
 | 
			
		||||
  static const size_t NAME##_COUNT =                                           \
 | 
			
		||||
      sizeof(__extension__(int[]){__VA_ARGS__}) / sizeof(int);
 | 
			
		||||
 | 
			
		||||
#endif // INC_UTIL_H
 | 
			
		||||
 | 
			
		||||
		Reference in New Issue
	
	Block a user