diff options
| author | gingerBill <gingerBill@users.noreply.github.com> | 2024-09-16 17:36:46 +0100 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2024-09-16 17:36:46 +0100 |
| commit | a16d3b6c9aa162652e2648e8f77424bf977c6ee5 (patch) | |
| tree | 30c77f09592bfbcd07925938eaef8d5a089b08ef /src/check_expr.cpp | |
| parent | 68619f299e0a632f634682baabcdc025b240b132 (diff) | |
| parent | 603efa860a5631f1708f6761d753146b6d47b4ba (diff) | |
Merge pull request #4242 from laytan/caller-expression
add '#caller_expression'
Diffstat (limited to 'src/check_expr.cpp')
| -rw-r--r-- | src/check_expr.cpp | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/src/check_expr.cpp b/src/check_expr.cpp index 7f82fb58a..6776094bf 100644 --- a/src/check_expr.cpp +++ b/src/check_expr.cpp @@ -7807,7 +7807,8 @@ gb_internal ExprKind check_call_expr(CheckerContext *c, Operand *operand, Ast *c name == "load" || name == "load_directory" || name == "load_hash" || - name == "hash" + name == "hash" || + name == "caller_expression" ) { operand->mode = Addressing_Builtin; operand->builtin_id = BuiltinProc_DIRECTIVE; @@ -8725,6 +8726,10 @@ gb_internal ExprKind check_basic_directive_expr(CheckerContext *c, Operand *o, A error(node, "#caller_location may only be used as a default argument parameter"); o->type = t_source_code_location; o->mode = Addressing_Value; + } else if (name == "caller_expression") { + error(node, "#caller_expression may only be used as a default argument parameter"); + o->type = t_string; + o->mode = Addressing_Value; } else { if (name == "location") { init_core_source_code_location(c->checker); |