%module xxx /* Divide by zero */ #define ZERO 0 #if 1%ZERO #endif #if 2/ZERO #endif #if 1%(5-5) #endif #if 2/(55-55) #endif /* Floating point */ #if 1.2 #endif #if 2e3 #endif #if 0 #elif 8.8 #endif /* Missing whitespace after preproc directive */ #if123 #endif #if456e #endif #if 0 #warning This should not warn #elif1 #warning This should also not warn #endif #if(1) #warning Warning okay: #if(1) #endif /* The SWIG preprocessor support strings with equality/inequality tests. * Check error cases. */ #if "TWO" == 1 #endif /* This didn't fail prior with SWIG < 4.1. Github #1384. */ #if 1 == ("TWO") #endif /* These should all give errors. */ #if "1" #endif #if -"1" #endif #if "1" == -"-1" #endif #if "1" == !"-1" #endif #if "1" == ~"1" #endif /* Unary + was a no-op and so this didn't give an error in SWIG < 4.1.0. */ #if "1" == +"1" #endif /* Spaceship operator doesn't seem to be allowed in preprocessor expressions, * and isn't valid in C at all. */ #if (4 <=> 2) < 0 #endif
Generated by dwww version 1.15 on Tue Jul 2 00:14:30 CEST 2024.