Adds null initializer syntax (empty braces) Allows null initialization of shared variables
		
			
				
	
	
		
			34 lines
		
	
	
		
			694 B
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			34 lines
		
	
	
		
			694 B
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
#version 450
 | 
						|
 | 
						|
layout(local_size_x_id = 18, local_size_z_id = 19) in;
 | 
						|
layout(local_size_x = 32, local_size_y = 32) in;
 | 
						|
layout(local_size_z_id = 14) in;  // ERROR, can't change this
 | 
						|
 | 
						|
void main()
 | 
						|
{
 | 
						|
    gl_WorkGroupSize;
 | 
						|
    int i = { };  // ERROR, need an extension
 | 
						|
}
 | 
						|
 | 
						|
layout(local_size_y_id = 19) in; // ERROR, already used: TODO not yet reported
 | 
						|
 | 
						|
shared float f = { };  // ERROR, need an extension
 | 
						|
float g = { };         // ERROR, need an extension
 | 
						|
 | 
						|
#extension GL_EXT_null_initializer : enable
 | 
						|
 | 
						|
shared float f2 = { };
 | 
						|
float g2 = { };
 | 
						|
 | 
						|
void foo()
 | 
						|
{
 | 
						|
    int i = { };
 | 
						|
    float fa[] = { };
 | 
						|
}
 | 
						|
 | 
						|
struct samp {
 | 
						|
    sampler2D s2D;
 | 
						|
} sampVar = { };
 | 
						|
 | 
						|
atomic_uint a = { };
 |