Fix ALIGNED_ARRAY_EMU macros on ICL
authorDerek Buitenhuis <derek.buitenhuis@gmail.com>
Mon, 17 Sep 2012 18:09:20 +0000 (11:09 -0700)
committerJason Garrett-Glaser <jason@x264.com>
Wed, 7 Nov 2012 22:48:35 +0000 (14:48 -0800)
ICL's preprocessor doesn't handle it correctly.
This fix is similar to libav's fix in 0db2d9.

common/osdep.h

index f7cad57..4d588ec 100644 (file)
     ALIGNED_16( type name sub1 __VA_ARGS__ )
 #endif
 
-#define ALIGNED_ARRAY_32( ... ) ALIGNED_ARRAY_EMU( 31, __VA_ARGS__ )
-#define ALIGNED_ARRAY_64( ... ) ALIGNED_ARRAY_EMU( 63, __VA_ARGS__ )
+#define EXPAND(x) x
+
+#define ALIGNED_ARRAY_32( ... ) EXPAND( ALIGNED_ARRAY_EMU( 31, __VA_ARGS__ ) )
+#define ALIGNED_ARRAY_64( ... ) EXPAND( ALIGNED_ARRAY_EMU( 63, __VA_ARGS__ ) )
 
 #define UNINIT(x) x=x