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

@ -38,27 +38,27 @@ spv.150.geom
MemberName 68(toFragment) 0 "color"
Name 70 "toF"
Decorate 8(fromVertex) Block
Decorate 10 Location 1
Decorate 10 Stream 3
Decorate 10 Location 1
Decorate 13(fromVertex) Block
Decorate 18(fromV) Location 0
Decorate 27(gl_PerVertex) Block
MemberDecorate 27(gl_PerVertex) 0 BuiltIn Position
MemberDecorate 27(gl_PerVertex) 1 BuiltIn PointSize
MemberDecorate 27(gl_PerVertex) 2 BuiltIn ClipDistance
Decorate 27(gl_PerVertex) Block
Decorate 29 Stream 0
Decorate 30(gl_PerVertex) Block
MemberDecorate 30(gl_PerVertex) 0 BuiltIn Position
MemberDecorate 30(gl_PerVertex) 1 BuiltIn PointSize
MemberDecorate 30(gl_PerVertex) 2 BuiltIn ClipDistance
Decorate 30(gl_PerVertex) Block
Decorate 47(gl_PrimitiveID) Stream 0
Decorate 47(gl_PrimitiveID) BuiltIn PrimitiveId
Decorate 47(gl_PrimitiveID) Stream 0
Decorate 49(gl_PrimitiveIDIn) BuiltIn PrimitiveId
Decorate 51(gl_Layer) Stream 0
Decorate 51(gl_Layer) BuiltIn Layer
Decorate 51(gl_Layer) Stream 0
Decorate 68(toFragment) Block
Decorate 70(toF) Location 0
Decorate 70(toF) Stream 3
Decorate 70(toF) Location 0
2: TypeVoid
3: TypeFunction 2
6: TypeFloat 32