123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178 |
- #version 110
- #define ON
- float sum = 0.0;
- void main()
- {
- #ifdef ON
- //yes
- sum += 1.0;
- #ifdef OFF
- //no
- sum += 20.0;
- #endif
- #if defined(ON)
- //yes
- sum += 300.0;
- #endif
- #endif
- #if defined(OFF)
- //no
- sum += 4000.0;
- #if !defined(ON)
- //no
- sum += 50000.0;
- #endif
- //no
- sum += 0.1;
- #ifdef ON
- //no
- sum += 0.2;
- #endif
- //no
- sum += 0.01;
- #ifdef ON
- //no
- sum += 0.02;
- #else
- //no
- sum += 0.03;
- #endif
- //no
- sum + 0.3;
- #endif
- #if !defined(OFF)
- //yes
- sum += 600000.0;
- #if defined(ON) && !defined(OFF)
- //yes
- sum += 80000000.0;
- #if defined(OFF) || defined(ON)
- //yes
- sum += 900000000.0;
- #if defined(ON) && defined(OFF)
- //no
- sum += 0.7;
- #elif !defined(OFF)
- //yes
- sum += 7000000.0;
- #endif
- #endif
- #endif
- #endif
- // sum should be 987600301.0
- gl_Position = vec4(sum);
- }
- #define A 1
- #define C 0
- #define E 0
- #define F 1
- #if A
- #if C
- #if E
- int selected4 = 1;
- #elif F
- int selected4 = 2;
- #else
- int selected4 = 3;
- #endif
- #endif
- int selected4 = 4;
- #endif
- #define ZA 1
- #define ZC 1
- #define ZE 0
- #define ZF 1
- #if ZA
- #if ZC
- #if ZE
- int selected2 = 1;
- #elif ZF
- int selected2 = 2;
- #else
- int selected2 = 3;
- #endif
- #endif
- #endif
- #define AZA 1
- #define AZC 1
- #define AZE 0
- #define AZF 0
- #if AZA
- #if AZC
- #if AZE
- int selected3 = 1;
- #elif AZF
- int selected3 = 2;
- #else
- int selected3 = 3;
- #endif
- #endif
- #endif
- // ERROR cases...
- #if 0
- int;
- #else
- int;
- #elif 1
- int;
- #endif
- #if 0
- int;
- #else
- int;
- #else
- int;
- #endif
- #if 0
- #if 0
- int;
- #else
- int;
- #elif 1
- int;
- #endif
- #if 0
- int;
- #else
- int;
- #else
- int;
- #endif
- #endif
- #define FUNC(a,b) a+b
- void foo985(){ FUNC( (((2))), ((3),4)); }
- // needs to be last test in file
- void foo987(){ FUNC(((); } // ERROR, EOF in argument
|