diff options
| author | Andrew Kelley <andrew@ziglang.org> | 2019-12-05 16:55:32 -0500 |
|---|---|---|
| committer | Andrew Kelley <andrew@ziglang.org> | 2019-12-05 17:07:15 -0500 |
| commit | 1f602fe8c5b3dea9f00f96e70dad73ebce405b49 (patch) | |
| tree | 30df1e8c6fd6f4dd99d91679aa02c79e0ff75c5f /src/ast_render.cpp | |
| parent | 38791ac616069963fd808ec724161b93cbc564c1 (diff) | |
| download | zig-1f602fe8c5b3dea9f00f96e70dad73ebce405b49.tar.gz zig-1f602fe8c5b3dea9f00f96e70dad73ebce405b49.zip | |
implement `@call`
closes #3732
Diffstat (limited to 'src/ast_render.cpp')
| -rw-r--r-- | src/ast_render.cpp | 23 |
1 files changed, 19 insertions, 4 deletions
diff --git a/src/ast_render.cpp b/src/ast_render.cpp index a8fb899ec3..2be932ac8e 100644 --- a/src/ast_render.cpp +++ b/src/ast_render.cpp @@ -702,14 +702,29 @@ static void render_node_extra(AstRender *ar, AstNode *node, bool grouped) { switch (node->data.fn_call_expr.modifier) { case CallModifierNone: break; - case CallModifierBuiltin: - fprintf(ar->f, "@"); + case CallModifierNoAsync: + fprintf(ar->f, "noasync "); break; case CallModifierAsync: fprintf(ar->f, "async "); break; - case CallModifierNoAsync: - fprintf(ar->f, "noasync "); + case CallModifierNeverTail: + fprintf(ar->f, "notail "); + break; + case CallModifierNeverInline: + fprintf(ar->f, "noinline "); + break; + case CallModifierAlwaysTail: + fprintf(ar->f, "tail "); + break; + case CallModifierAlwaysInline: + fprintf(ar->f, "inline "); + break; + case CallModifierCompileTime: + fprintf(ar->f, "comptime "); + break; + case CallModifierBuiltin: + fprintf(ar->f, "@"); break; } AstNode *fn_ref_node = node->data.fn_call_expr.fn_ref_expr; |
