Don't emit duplicate decorations. (#3635)

It is invalid if the same decoration is applied to the same id multiple
times. This adds a check before adding a decoration that the decoration
is not already in the list. If it is, then the duplicate is not added.

Fixes #3627
This commit is contained in:
Steven Perron 2024-06-28 19:16:59 -04:00 committed by GitHub
parent 7c40de7aa2
commit 33c7e30860
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
575 changed files with 3482 additions and 3414 deletions

View file

@ -310,36 +310,36 @@ output primitive = triangle_strip
Name 97 "uBuf"
Name 100 "P"
Decorate 18(oColor) Location 1
Decorate 20(ColorBlock) Block
MemberDecorate 20(ColorBlock) 0 Offset 0
MemberDecorate 20(ColorBlock) 1 Offset 16
MemberDecorate 20(ColorBlock) 2 Offset 32
MemberDecorate 20(ColorBlock) 3 Offset 48
Decorate 20(ColorBlock) Block
Decorate 22(uC) DescriptorSet 0
Decorate 22(uC) Binding 1
Decorate 22(uC) DescriptorSet 0
Decorate 44(gl_PerVertex) Block
MemberDecorate 44(gl_PerVertex) 0 BuiltIn Position
MemberDecorate 44(gl_PerVertex) 1 BuiltIn PointSize
MemberDecorate 44(gl_PerVertex) 2 BuiltIn ClipDistance
Decorate 44(gl_PerVertex) Block
MemberDecorate 48(MatrixBlock) 0 ColMajor
MemberDecorate 48(MatrixBlock) 0 Offset 0
MemberDecorate 48(MatrixBlock) 0 MatrixStride 16
MemberDecorate 48(MatrixBlock) 1 ColMajor
MemberDecorate 48(MatrixBlock) 1 Offset 64
MemberDecorate 48(MatrixBlock) 1 MatrixStride 16
Decorate 48(MatrixBlock) Block
Decorate 50(uM) DescriptorSet 0
MemberDecorate 48(MatrixBlock) 0 ColMajor
MemberDecorate 48(MatrixBlock) 0 MatrixStride 16
MemberDecorate 48(MatrixBlock) 0 Offset 0
MemberDecorate 48(MatrixBlock) 1 ColMajor
MemberDecorate 48(MatrixBlock) 1 MatrixStride 16
MemberDecorate 48(MatrixBlock) 1 Offset 64
Decorate 50(uM) Binding 0
Decorate 50(uM) DescriptorSet 0
Decorate 59(Vertex) Block
Decorate 61(oV) Location 0
Decorate 64(Vertex) Block
Decorate 68(iV) Location 0
MemberDecorate 95(BufferBlock) 0 ColMajor
MemberDecorate 95(BufferBlock) 0 Offset 0
MemberDecorate 95(BufferBlock) 0 MatrixStride 16
Decorate 95(BufferBlock) BufferBlock
Decorate 97(uBuf) DescriptorSet 0
MemberDecorate 95(BufferBlock) 0 ColMajor
MemberDecorate 95(BufferBlock) 0 MatrixStride 16
MemberDecorate 95(BufferBlock) 0 Offset 0
Decorate 97(uBuf) Binding 1
Decorate 97(uBuf) DescriptorSet 0
Decorate 100(P) Location 2
2: TypeVoid
3: TypeFunction 2