scc

simple c99 compiler
git clone git://git.simple-cc.org/scc
Log | Files | Refs | Submodules | README | LICENSE

0234-macro.c (1135B)


      1 #ifdef __cplusplus
      2 #define FT_STATIC_BYTE_CAST( type, var )                         \
      3           static_cast<type>( static_cast<unsigned char>( var ) )
      4 #else
      5 #define FT_STATIC_BYTE_CAST( type, var )  (type)(unsigned char)(var)
      6 #endif
      7 
      8 #ifndef FT_IMAGE_TAG
      9 
     10 #define FT_IMAGE_TAG( value, _x1, _x2, _x3, _x4 )                         \
     11           value = ( ( FT_STATIC_BYTE_CAST( unsigned long, _x1 ) << 24 ) | \
     12                     ( FT_STATIC_BYTE_CAST( unsigned long, _x2 ) << 16 ) | \
     13                     ( FT_STATIC_BYTE_CAST( unsigned long, _x3 ) << 8  ) | \
     14                       FT_STATIC_BYTE_CAST( unsigned long, _x4 )         )
     15 
     16 #endif /* FT_IMAGE_TAG */
     17 
     18 typedef enum  FT_Glyph_Format_
     19 {
     20     FT_IMAGE_TAG( FT_GLYPH_FORMAT_NONE, 0, 0, 0, 0 ),
     21 
     22     FT_IMAGE_TAG( FT_GLYPH_FORMAT_COMPOSITE, 'c', 'o', 'm', 'p' ),
     23     FT_IMAGE_TAG( FT_GLYPH_FORMAT_BITMAP,    'b', 'i', 't', 's' ),
     24     FT_IMAGE_TAG( FT_GLYPH_FORMAT_OUTLINE,   'o', 'u', 't', 'l' ),
     25     FT_IMAGE_TAG( FT_GLYPH_FORMAT_PLOTTER,   'p', 'l', 'o', 't' ),
     26     FT_IMAGE_TAG( FT_GLYPH_FORMAT_SVG,       'S', 'V', 'G', ' ' )
     27 
     28 } FT_Glyph_Format;
     29 
     30 int
     31 main(void)
     32 {
     33 	return 0;
     34 }