HLSL: Fix #1203: Declare anonymous members for cbuffer with no ';'
The grammar for no semicolon and no object name for cbuffer/tbuffer was correct, but the production still skipped the anonymous declarations if an identifier followed.
This commit is contained in:
@@ -31,7 +31,17 @@ float foo() // float looks like identifier, but can't be part of tbuffer
|
||||
return 1.0;
|
||||
}
|
||||
|
||||
float4 PixelShaderFunction(float4 input : SV_POSITION) : SV_TARGET0
|
||||
{
|
||||
return (input + v1 + v2 + v3 + v4) * foo();
|
||||
struct id {
|
||||
float4 a;
|
||||
};
|
||||
|
||||
cbuffer cbufName2 {
|
||||
float4 v24;
|
||||
}
|
||||
|
||||
id PixelShaderFunction(float4 input : SV_POSITION) : SV_TARGET0 // id looks like id for cbuffer name, but can't be
|
||||
{
|
||||
id ret;
|
||||
ret.a = v24 + (input + v1 + v2 + v3 + v4) * foo();
|
||||
return ret;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user