 5f1a0b7998
			
		
	
	
		5f1a0b7998
		
	
	
	
	
		
			
			Also: - change source locations from an int to TSourceLoc (shader number, line number) throughout - various improvements to the preprocessor git-svn-id: https://cvs.khronos.org/svn/repos/ogl/trunk/ecosystem/public/sdk/tools/glslang@22277 e7fa87d3-cd2b-0410-9028-fcbf551c1848
		
			
				
	
	
		
			134 lines
		
	
	
		
			1.5 KiB
		
	
	
	
		
			GLSL
		
	
	
	
	
	
			
		
		
	
	
			134 lines
		
	
	
		
			1.5 KiB
		
	
	
	
		
			GLSL
		
	
	
	
	
	
| #version 110
 | |
| 
 | |
| #define ON
 | |
| 
 | |
| float sum = 0.0;
 | |
| 
 | |
| void main()
 | |
| {
 | |
| 
 | |
| #ifdef ON
 | |
| //yes
 | |
| sum += 1.0;
 | |
| #endif
 | |
| 
 | |
| #ifdef OFF
 | |
| //no
 | |
| sum += 20.0;
 | |
| #endif
 | |
| 
 | |
| #if defined(ON)
 | |
| //yes
 | |
| sum += 300.0;
 | |
| #endif
 | |
| 
 | |
| #if defined(OFF)
 | |
| //no
 | |
| sum += 4000.0;
 | |
| #endif
 | |
| 
 | |
| #if !defined(ON)
 | |
| //no
 | |
| sum += 50000.0;
 | |
| #endif
 | |
| 
 | |
| #ifndef OFF
 | |
| //yes
 | |
| sum += 600000.0;
 | |
| #else
 | |
| //no
 | |
| sum += 0.6;
 | |
| #endif
 | |
| 
 | |
| #if defined(ON) && defined(OFF)
 | |
| //no
 | |
| sum += 0.7;
 | |
| #elif !defined(OFF)
 | |
| //yes
 | |
| sum += 7000000.0;
 | |
| #endif
 | |
| 
 | |
| #if defined(ON) && !defined(OFF)
 | |
| //yes
 | |
| sum += 80000000.0;
 | |
| #endif
 | |
| 
 | |
| #if defined(OFF) || defined(ON)
 | |
| //yes
 | |
| sum += 900000000.0;
 | |
| #endif
 | |
| 
 | |
| #if NEVER_DEFINED
 | |
| //no
 | |
| sum += 0.04;
 | |
| #else
 | |
| sum += 0.05;
 | |
| #endif
 | |
| 
 | |
| // sum should be 987600301.7
 | |
|     gl_Position = vec4(sum);
 | |
| }
 | |
| 
 | |
| #define A 0
 | |
| #define B 0
 | |
| #define C 0
 | |
| 
 | |
| #if (A == B) || (A == C)
 | |
| #error good1
 | |
| #endif
 | |
| 
 | |
| #if A == B || (A == C)
 | |
| #error good2
 | |
| #endif
 | |
| 
 | |
| #if (A == B || (A == C))
 | |
| #error good3
 | |
| #endif
 | |
| 
 | |
| #if (AA == BB) || (AA == CC)
 | |
| #error good4
 | |
| #endif
 | |
| 
 | |
| #if AA == BB || (AA == CC)
 | |
| #error good5
 | |
| #endif
 | |
| 
 | |
| #if ((AA == BB || (AA == CC)))
 | |
| #error good6
 | |
| #endif
 | |
| 
 | |
| #if (A == B || (A == C)
 | |
| #error bad1
 | |
| #endif
 | |
| 
 | |
| #if A == B || A == C)
 | |
| #error bad2
 | |
| #endif
 | |
| 
 | |
| #if (A == B || (A == C)
 | |
| #error bad3
 | |
| #endif
 | |
| 
 | |
| #if AA == BB) || (AA == CC)
 | |
| #error bad4
 | |
| #endif
 | |
| 
 | |
| #if AA == BB || (AA == CC
 | |
| #error bad5
 | |
| #endif
 | |
| 
 | |
| #if ((AA == BB || (AA == CC))))
 | |
| #error bad6
 | |
| #endif
 | |
| 
 | |
| int linenumber = __LINE__;
 | |
| int filenumber = __FILE__;
 | |
| int version = __VERSION__;
 | |
| 
 | |
| #define PI (3.14)
 | |
| #define TWOPI (2.0 * PI)
 | |
| float twoPi = TWOPI;
 | |
| 
 | |
| #define PASTE(a,b) a ## b
 | |
| float PASTE(tod, ay) = 17;
 |