Single member structs initialized with an initializer list had an incorrect argument for constructor emulation.
		
			
				
	
	
		
			37 lines
		
	
	
		
			830 B
		
	
	
	
		
			GLSL
		
	
	
	
	
	
			
		
		
	
	
			37 lines
		
	
	
		
			830 B
		
	
	
	
		
			GLSL
		
	
	
	
	
	
float4 a1 = float4(1, 0.5, 0, 1), b1 = float4(2.0, 2.5, 2.1, 2.2);
 | 
						|
float4 a1i = {1, 0.5, 0, 1}, b1i = {2.0, 2.5, 2.1, 2.2};
 | 
						|
float a2 = 0.2, b2;
 | 
						|
float a3, b3 = 0.3;
 | 
						|
float a4, b4 = 0.4, c4;
 | 
						|
float a5 = 0.5, b5, c5 = 1.5;
 | 
						|
 | 
						|
struct Single1 { int f; };
 | 
						|
Single1 single1 = { 10 };
 | 
						|
 | 
						|
struct Single2 { uint2 v; };
 | 
						|
Single2 single2 = { { 1, 2 } };
 | 
						|
 | 
						|
struct Single3 { Single1 s1; };
 | 
						|
Single3 single3 = { { 3 } };
 | 
						|
 | 
						|
struct Single4 { Single2 s1; };
 | 
						|
Single4 single4 = { { { 4u, 5u } } };
 | 
						|
 | 
						|
float4 ShaderFunction(float4 input) : COLOR0
 | 
						|
{
 | 
						|
    float4 a2 = float4(0.2, 0.3, 0.4, 0.5);
 | 
						|
    struct S1 {
 | 
						|
        float f;
 | 
						|
        int i;
 | 
						|
    };
 | 
						|
    struct S2 {
 | 
						|
        int  j;
 | 
						|
        float g;
 | 
						|
        S1 s1;
 | 
						|
    };
 | 
						|
    S2 s2i = { 9, a5, { (a3,a4), 12} }, s2 = S2(9, a5, S1((a3,a4), 12));
 | 
						|
    float a8 = (a2, b2), a9 = a5;
 | 
						|
 | 
						|
    return input * a1;
 | 
						|
}
 |