/tags/rel-1-3-29/SWIG/Examples/test-suite/cpp_broken.i
Swig | 75 lines | 56 code | 17 blank | 2 comment | 0 complexity | a6013352cbf9904f4836b2a374a6a75b MD5 | raw file
Possible License(s): LGPL-2.1, Cube, GPL-3.0, 0BSD, GPL-2.0
- %module cpp_broken
- // bug #1060789
- %inline %{
- #define MASK(shift, size) (((1 << (size)) - 1) << (shift))
- #define SOME_MASK_DEF (80*MASK(8, 10))
- %}
- // bug #1060079
- %inline %{
- #define FIELD(name, width) unsigned int name:width
- #define SOME_CONST 2
- #define NEXT_CONST (2 * SOME_CONST)
- typedef struct {
- FIELD(a, SOME_CONST);
- FIELD(b, NEXT_CONST);
- } MyStruct_t;
- %}
- %{
- #ifdef max
- #undef max
- #endif
- %}
- // bug #994301
- %inline %{
- #define max(a,b) ((a) > (b) ? (a) : (b))
- %}
- // bug #940318
- %inline %{
- typedef enum {
- eZero = 0
- #define ONE 1
- } EFoo;
- %}
- // bug #754443
- %inline %{
- #define MAG_STYLE_BORDER_OFFS 0
- #define MAG_STYLE_BORDER_BITS 3
- #define MAG_STYLE_BORDER_MASK (((1UL<<MAG_STYLE_BORDER_BITS)-1)<<MAG_STYLE_BORDER_OFFS)
- /* these CANNOT be combined */
- #define MAG_STYLE_BORDER_NONE (1 << MAG_STYLE_BORDER_OFFS)
- #define MAG_STYLE_BORDER_STATIC (2 << MAG_STYLE_BORDER_OFFS)
- #define MAG_STYLE_BORDER_SIMPLE (3 << MAG_STYLE_BORDER_OFFS)
- #define MAG_STYLE_BORDER_RAISED (4 << MAG_STYLE_BORDER_OFFS)
- #define MAG_STYLE_BORDER_DOUBLE (5 << MAG_STYLE_BORDER_OFFS)
- #define MAG_STYLE_BORDER_DEFAULT MAG_STYLE_BORDER_SIMPLE
- #define MAG_STYLE_CAPTION_OFFS ( MAG_STYLE_BORDER_OFFS + MAG_STYLE_BORDER_BITS )
- #define MAG_STYLE_CAPTION_BITS 8
- #define MAG_STYLE_CAPTION_MASK (((1UL<<MAG_STYLE_CAPTION_BITS)-1)<<MAG_STYLE_CAPTION_OFFS)
- /* these CAN be combined */
- #define MAG_STYLE_CAPTION_NONE ( 1 << ( 0 + MAG_STYLE_CAPTION_OFFS ))
- #define MAG_STYLE_CAPTION_PRESENT ( 1 << ( 1 + MAG_STYLE_CAPTION_OFFS ))
- #define MAG_STYLE_CAPTION_SYSMENU ( 1 << ( 2 + MAG_STYLE_CAPTION_OFFS ))
- #define MAG_STYLE_CAPTION_MINIMIZE ( 1 << ( 3 + MAG_STYLE_CAPTION_OFFS ))
- #define MAG_STYLE_CAPTION_MAXIMIZE ( 1 << ( 4 + MAG_STYLE_CAPTION_OFFS ))
- #define MAG_STYLE_CAPTION_RESIZE ( 1 << ( 5 + MAG_STYLE_CAPTION_OFFS ))
- #define MAG_STYLE_CAPTION_TINYHOR ( 1 << ( 6 + MAG_STYLE_CAPTION_OFFS ))
- #define MAG_STYLE_CAPTION_TINYVER ( 1 << ( 7 + MAG_STYLE_CAPTION_OFFS ))
- #define MAG_STYLE_CAPTION_DEFAULT ( MAG_STYLE_CAPTION_RESIZE + MAG_STYLE_CAPTION_MAXIMIZE + MAG_STYLE_CAPTION_MINIMIZE + MAG_STYLE_CAPTION_SYSMENU + MAG_STYLE_CAPTION_PRESENT )
- %}