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

@ -279,8 +279,8 @@ Validation failed
Decorate 65(s.c) Location 3
Decorate 71(s.d) Centroid
Decorate 71(s.d) Location 4
Decorate 76(s.ff1) Flat
Decorate 76(s.ff1) BuiltIn FrontFacing
Decorate 76(s.ff1) Flat
Decorate 80(s.ff2) Flat
Decorate 80(s.ff2) Location 5
Decorate 84(s.ff3) Flat
@ -291,12 +291,12 @@ Validation failed
MemberDecorate 98(myS) 1 Offset 4
MemberDecorate 98(myS) 2 Offset 16
MemberDecorate 98(myS) 3 Offset 32
Decorate 99($Global) Block
MemberDecorate 99($Global) 0 Offset 0
MemberDecorate 99($Global) 1 Offset 1620
MemberDecorate 99($Global) 2 Offset 1636
Decorate 99($Global) Block
Decorate 101 DescriptorSet 0
Decorate 101 Binding 0
Decorate 101 DescriptorSet 0
2: TypeVoid
3: TypeFunction 2
6: TypeFloat 32