diff options
Diffstat (limited to 'source/slang/slang-parser.cpp')
| -rw-r--r-- | source/slang/slang-parser.cpp | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/source/slang/slang-parser.cpp b/source/slang/slang-parser.cpp index b270ba713..c3eba8c58 100644 --- a/source/slang/slang-parser.cpp +++ b/source/slang/slang-parser.cpp @@ -5299,6 +5299,13 @@ namespace Slang return expr; } + static NodeBase* parseReturnValExpr(Parser* parser, void* /*userData*/) + { + ReturnValExpr* expr = parser->astBuilder->create<ReturnValExpr>(); + expr->scope = parser->currentScope; + return expr; + } + static Expr* parseBoolLitExpr(Parser* parser, bool value) { BoolLiteralExpr* expr = parser->astBuilder->create<BoolLiteralExpr>(); @@ -7314,6 +7321,7 @@ namespace Slang _makeParseExpr("this", parseThisExpr), _makeParseExpr("true", parseTrueExpr), _makeParseExpr("false", parseFalseExpr), + _makeParseExpr("__return_val", parseReturnValExpr), _makeParseExpr("nullptr", parseNullPtrExpr), _makeParseExpr("none", parseNoneExpr), _makeParseExpr("try", parseTryExpr), |
