summaryrefslogtreecommitdiff
path: root/source/slang/slang-parser.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'source/slang/slang-parser.cpp')
-rw-r--r--source/slang/slang-parser.cpp7
1 files changed, 6 insertions, 1 deletions
diff --git a/source/slang/slang-parser.cpp b/source/slang/slang-parser.cpp
index b3a18f8a8..04ada006c 100644
--- a/source/slang/slang-parser.cpp
+++ b/source/slang/slang-parser.cpp
@@ -8190,7 +8190,7 @@ namespace Slang
CASE(push_constant, PushConstantAttribute)
CASE(shaderRecordNV, ShaderRecordAttribute)
CASE(shaderRecordEXT, ShaderRecordAttribute)
- CASE(constant_id, GLSLConstantIDLayoutModifier)
+ CASE(constant_id, VkConstantIdAttribute)
CASE(std140, GLSLStd140Modifier)
CASE(std430, GLSLStd430Modifier)
CASE(scalar, GLSLScalarModifier)
@@ -8228,6 +8228,11 @@ namespace Slang
parser->diagnose(modifier->loc, Diagnostics::missingLayoutBindingModifier);
}
}
+ else if (auto specConstAttr = as<VkConstantIdAttribute>(modifier))
+ {
+ parser->ReadToken(TokenType::OpAssign);
+ specConstAttr->location = (int)getIntegerLiteralValue(parser->ReadToken(TokenType::IntegerLiteral));
+ }
listBuilder.add(modifier);
}