diff options
| author | Yong He <yonghe@outlook.com> | 2024-02-20 15:37:11 -0800 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2024-02-20 15:37:11 -0800 |
| commit | a62be597990966b9516995650baf750ee6a0146b (patch) | |
| tree | 1741b3d5b5859319f278aa6ab821a2f801fd8e08 /source/slang/slang-parser.cpp | |
| parent | 4d20fd329956ac89408b1628a8291fea01bc9a6d (diff) | |
Support link time type specialization. (#3604)
Diffstat (limited to 'source/slang/slang-parser.cpp')
| -rw-r--r-- | source/slang/slang-parser.cpp | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/source/slang/slang-parser.cpp b/source/slang/slang-parser.cpp index e0ffba53c..b89b93138 100644 --- a/source/slang/slang-parser.cpp +++ b/source/slang/slang-parser.cpp @@ -3232,6 +3232,9 @@ namespace Slang inheritanceDecl->base = base; AddMember(decl, inheritanceDecl); + + if (parser->pendingModifiers->hasModifier<ExternModifier>()) + addModifier(inheritanceDecl, parser->astBuilder->create<ExternModifier>()); } while (AdvanceIf(parser, TokenType::Comma)); } @@ -4730,6 +4733,8 @@ namespace Slang // We allow for an inheritance clause on a `struct` // so that it can conform to interfaces. parseOptionalInheritanceClause(this, rs); + if (AdvanceIf(this, TokenType::Semicolon)) + return rs; parseDeclBody(this, rs); return rs; }); |
