diff --git a/internal/shader/syntax_test.go b/internal/shader/syntax_test.go index f258cbd81..16bd0885b 100644 --- a/internal/shader/syntax_test.go +++ b/internal/shader/syntax_test.go @@ -4368,6 +4368,16 @@ func TestSyntaxIndex(t *testing.T) { // Issue #3011 if _, err := compileToIR([]byte(`package main +func Foo() float { + var a int + var b vec4 + return b[a] +} +`)); err == nil { + t.Error("compileToIR must return an error but did not") + } + if _, err := compileToIR([]byte(`package main + func Foo() int { var a int var b ivec4 @@ -4388,6 +4398,16 @@ func Foo() float { } if _, err := compileToIR([]byte(`package main +func Foo() float { + const a = 0 + var b vec4 + return b[a] +} +`)); err != nil { + t.Error(err) + } + if _, err := compileToIR([]byte(`package main + func Foo() int { const a = 0 var b ivec4