aboutsummaryrefslogtreecommitdiff
path: root/compile.c
diff options
context:
space:
mode:
authorBruce Hill <bruce@bruce-hill.com>2024-04-13 15:20:42 -0400
committerBruce Hill <bruce@bruce-hill.com>2024-04-13 15:20:42 -0400
commitc8e2f0faad925d7d5bcc6ebcb7b0c306c9e663e5 (patch)
treed86f18dad96bb59a1d280d7b7a23e513f85e4758 /compile.c
parentfab547ebc84a6f8913e1c5c7cd6b0f4598f5382c (diff)
Rudimentary stack traces
Diffstat (limited to 'compile.c')
-rw-r--r--compile.c14
1 files changed, 10 insertions, 4 deletions
diff --git a/compile.c b/compile.c
index 8de13b2c..4c31bcad 100644
--- a/compile.c
+++ b/compile.c
@@ -776,10 +776,16 @@ CORD compile_statement(env_t *env, ast_t *ast)
default:
return CORD_asprintf("(void)%r;", compile(env, ast));
}
- // int64_t line = get_line_number(ast->file, ast->start);
- // return stmt ? CORD_asprintf("#line %ld\n%r", line, stmt) : stmt;
}
+// CORD compile_statement(env_t *env, ast_t *ast) {
+// CORD stmt = _compile_statement(env, ast);
+// if (!stmt)
+// return stmt;
+// int64_t line = get_line_number(ast->file, ast->start);
+// return CORD_asprintf("#line %ld\n%r", line, stmt);
+// }
+
CORD expr_as_text(env_t *env, CORD expr, type_t *t, CORD color)
{
switch (t->tag) {
@@ -2091,14 +2097,14 @@ module_code_t compile_file(ast_t *ast)
.module_name=name,
.object_files=env->code->object_files,
.header=CORD_all(
- // CORD_asprintf("#line 0 %r\n", Text$quoted(ast->file->filename, false)),
+ // CORD_asprintf("#line 1 %r\n", Text$quoted(ast->file->filename, false)),
"#include <tomo/tomo.h>\n",
env->code->typedefs, "\n",
env->code->typecode, "\n",
env->code->fndefs, "\n"
),
.c_file=CORD_all(
- // CORD_asprintf("#line 0 %r\n", Text$quoted(ast->file->filename, false)),
+ // CORD_asprintf("#line 1 %r\n", Text$quoted(ast->file->filename, false)),
env->code->imports, "\n",
env->code->staticdefs, "\n",
env->code->funcs, "\n",