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

@ -12,40 +12,40 @@ WARNING: 0:4: 'immediate sampler state' : unimplemented
EntryPoint Fragment 4 "main" 188 192
ExecutionMode 4 OriginUpperLeft
ExecutionMode 4 DepthReplacing
Decorate 45 DescriptorSet 0
Decorate 45 Binding 0
Decorate 49 DescriptorSet 0
Decorate 45 DescriptorSet 0
Decorate 49 Binding 0
Decorate 60 DescriptorSet 0
Decorate 49 DescriptorSet 0
Decorate 60 Binding 2
Decorate 73 DescriptorSet 0
Decorate 60 DescriptorSet 0
Decorate 73 Binding 3
Decorate 83 DescriptorSet 0
Decorate 73 DescriptorSet 0
Decorate 83 Binding 4
Decorate 94 DescriptorSet 0
Decorate 83 DescriptorSet 0
Decorate 94 Binding 5
Decorate 105 DescriptorSet 0
Decorate 94 DescriptorSet 0
Decorate 105 Binding 6
Decorate 117 DescriptorSet 0
Decorate 105 DescriptorSet 0
Decorate 117 Binding 7
Decorate 128 DescriptorSet 0
Decorate 117 DescriptorSet 0
Decorate 128 Binding 8
Decorate 138 DescriptorSet 0
Decorate 128 DescriptorSet 0
Decorate 138 Binding 9
Decorate 151 DescriptorSet 0
Decorate 138 DescriptorSet 0
Decorate 151 Binding 10
Decorate 160 DescriptorSet 0
Decorate 151 DescriptorSet 0
Decorate 160 Binding 11
Decorate 169 DescriptorSet 0
Decorate 160 DescriptorSet 0
Decorate 169 Binding 12
Decorate 169 DescriptorSet 0
Decorate 188 Location 0
Decorate 192 BuiltIn FragDepth
Decorate 195 DescriptorSet 0
Decorate 195 Binding 0
Decorate 196 DescriptorSet 0
Decorate 195 DescriptorSet 0
Decorate 196 Binding 0
Decorate 197 DescriptorSet 0
Decorate 196 DescriptorSet 0
Decorate 197 Binding 1
Decorate 197 DescriptorSet 0
2: TypeVoid
3: TypeFunction 2
6: TypeFloat 32