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

@ -59,45 +59,45 @@ Validation failed
Name 203 "s1D"
Name 204 "s2DS"
Decorate 17(o) Location 0
Decorate 21(samp2D) DescriptorSet 0
Decorate 21(samp2D) Binding 2
Decorate 37(samp2DA) DescriptorSet 0
Decorate 21(samp2D) DescriptorSet 0
Decorate 37(samp2DA) Binding 5
Decorate 47(samp2DR) DescriptorSet 0
Decorate 37(samp2DA) DescriptorSet 0
Decorate 47(samp2DR) Binding 4
Decorate 55(samp2DS) DescriptorSet 0
Decorate 47(samp2DR) DescriptorSet 0
Decorate 55(samp2DS) Binding 3
Decorate 55(samp2DS) DescriptorSet 0
Decorate 68(io) Location 1
Decorate 72(Sca) DescriptorSet 0
Decorate 72(Sca) Binding 6
Decorate 72(Sca) DescriptorSet 0
Decorate 79(i) Location 0
Decorate 87(Isca) DescriptorSet 0
Decorate 87(Isca) Binding 7
Decorate 87(Isca) DescriptorSet 0
Decorate 99(uo) Location 2
Decorate 103(Usca) DescriptorSet 0
Decorate 103(Usca) Binding 8
Decorate 118(Scas) DescriptorSet 0
Decorate 103(Usca) DescriptorSet 0
Decorate 118(Scas) Binding 9
Decorate 167(sampC) DescriptorSet 0
Decorate 118(Scas) DescriptorSet 0
Decorate 167(sampC) Binding 1
Decorate 167(sampC) DescriptorSet 0
Decorate 173(gl_ClipDistance) BuiltIn ClipDistance
Decorate 184(fflat) Flat
Decorate 184(fflat) Location 1
Decorate 185(fsmooth) Location 2
Decorate 186(fnop) NoPerspective
Decorate 186(fnop) Location 3
Decorate 193(bounds) DescriptorSet 0
Decorate 193(bounds) Binding 0
Decorate 194(s2D) DescriptorSet 0
Decorate 193(bounds) DescriptorSet 0
Decorate 194(s2D) Binding 0
Decorate 195(s2DR) DescriptorSet 0
Decorate 194(s2D) DescriptorSet 0
Decorate 195(s2DR) Binding 0
Decorate 199(s2DRS) DescriptorSet 0
Decorate 195(s2DR) DescriptorSet 0
Decorate 199(s2DRS) Binding 0
Decorate 203(s1D) DescriptorSet 0
Decorate 199(s2DRS) DescriptorSet 0
Decorate 203(s1D) Binding 0
Decorate 204(s2DS) DescriptorSet 0
Decorate 203(s1D) DescriptorSet 0
Decorate 204(s2DS) Binding 0
Decorate 204(s2DS) DescriptorSet 0
2: TypeVoid
3: TypeFunction 2
14: TypeFloat 32