summary refs log tree commit diff
path: root/main.c
diff options
context:
space:
mode:
authorThomas Bracht Laumann Jespersen <t@laumann.xyz>2023-01-26 12:09:44 +0100
committerQuentin Carbonneaux <quentin@c9x.me>2023-06-06 18:44:51 +0200
commit0d929287d77ccc3fb52ca8bd072678b5ae2c81c8 (patch)
tree72cf91ec66052797059734c9d089a49a69b47122 /main.c
parente493a7f23352f51acc0a1e12284ab19d7894488a (diff)
downloadroux-0d929287d77ccc3fb52ca8bd072678b5ae2c81c8.tar.gz
implement line number info tracking
Support "file" and "loc" directives. "file" takes a string (a file name)
assigns it a number, sets the current file to that number and records
the string for later. "loc" takes a single number and outputs location
information with a reference to the current file.
Diffstat (limited to 'main.c')
-rw-r--r--main.c8
1 files changed, 7 insertions, 1 deletions
diff --git a/main.c b/main.c
index abfe03e..5ecb4d0 100644
--- a/main.c
+++ b/main.c
@@ -107,6 +107,12 @@ func(Fn *fn)
 	freeall();
 }
 
+static void
+dbgfile(char *fn)
+{
+	emitdbgfile(fn, outf);
+}
+
 int
 main(int ac, char *av[])
 {
@@ -181,7 +187,7 @@ main(int ac, char *av[])
 				exit(1);
 			}
 		}
-		parse(inf, f, data, func);
+		parse(inf, f, dbgfile, data, func);
 		fclose(inf);
 	} while (++optind < ac);