33 lines
		
	
	
		
			632 B
		
	
	
	
		
			GLSL
		
	
	
	
	
	
			
		
		
	
	
			33 lines
		
	
	
		
			632 B
		
	
	
	
		
			GLSL
		
	
	
	
	
	
| #version 460 core
 | |
| 
 | |
| struct S {
 | |
|     float f;
 | |
|     vec4 v;
 | |
| };
 | |
| 
 | |
| in S s;
 | |
| 
 | |
| void main()
 | |
| {
 | |
|     interpolateAtCentroid(s.v);
 | |
|     bool b1;
 | |
|     b1 = anyInvocation(b1);
 | |
|     b1 = allInvocations(b1);
 | |
|     b1 = allInvocationsEqual(b1);
 | |
| }
 | |
| 
 | |
| void attExtBad()
 | |
| {
 | |
|     // ERRORs, not enabled
 | |
|     [[dependency_length(1+3)]] for (int i = 0; i < 8; ++i) { }
 | |
|     [[flatten]]                if (true) { } else { }
 | |
| }
 | |
| 
 | |
| #extension GL_EXT_control_flow_attributes : enable
 | |
| 
 | |
| void attExt()
 | |
| {
 | |
|     [[dependency_length(-3)]] do {  } while(true); // ERROR, not positive
 | |
|     [[dependency_length(0)]] do {  } while(true);  // ERROR, not positive
 | |
| }
 | 
