aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--compile_commands.json568
-rw-r--r--sys/cmd/cc/cc.c7
-rw-r--r--sys/cmd/cc/cc.h2
-rw-r--r--sys/cmd/cc/lex.c4
4 files changed, 7 insertions, 574 deletions
diff --git a/compile_commands.json b/compile_commands.json
index 92a45a0..fe1bfb2 100644
--- a/compile_commands.json
+++ b/compile_commands.json
@@ -13,514 +13,6 @@
"-I",
"include",
"-o",
- "build/libbio/phylo.o",
- "sys/libbio/phylo.c"
- ],
- "directory": "/home/nolln/root",
- "file": "sys/libbio/phylo.c"
- },
- {
- "arguments": [
- "gcc",
- "-c",
- "-g",
- "-march=native",
- "-fno-strict-aliasing",
- "-fwrapv",
- "-fms-extensions",
- "-ffreestanding",
- "-fno-builtin",
- "-nostdlib",
- "-isystem",
- "include/vendor/libc",
- "-I",
- "include",
- "-o",
- "build/libc/stdio.o",
- "sys/libc/stdio.c"
- ],
- "directory": "/home/nolln/root",
- "file": "sys/libc/stdio.c"
- },
- {
- "arguments": [
- "gcc",
- "-c",
- "-g",
- "-march=native",
- "-fno-strict-aliasing",
- "-fwrapv",
- "-fms-extensions",
- "-isystem",
- "include/vendor/libc",
- "-I",
- "include",
- "-o",
- "build/libmath/blas2.o",
- "sys/libmath/blas2.c"
- ],
- "directory": "/home/nolln/root",
- "file": "sys/libmath/blas2.c"
- },
- {
- "arguments": [
- "gcc",
- "-c",
- "-g",
- "-march=native",
- "-fno-strict-aliasing",
- "-fwrapv",
- "-fms-extensions",
- "-D_GNU_SOURCE",
- "-isystem",
- "include/vendor/libc",
- "-I",
- "include",
- "-o",
- "build/libmath/test.o",
- "sys/libmath/test.c"
- ],
- "directory": "/home/nolln/root",
- "file": "sys/libmath/test.c"
- },
- {
- "arguments": [
- "gcc",
- "-c",
- "-g",
- "-march=native",
- "-fno-strict-aliasing",
- "-fwrapv",
- "-fms-extensions",
- "-D_GNU_SOURCE",
- "-isystem",
- "include/vendor/libc",
- "-I",
- "include",
- "-o",
- "build/libmath/blas.o",
- "sys/libmath/blas.c"
- ],
- "directory": "/home/nolln/root",
- "file": "sys/libmath/blas.c"
- },
- {
- "arguments": [
- "gcc",
- "-c",
- "-g",
- "-march=native",
- "-fno-strict-aliasing",
- "-fwrapv",
- "-fms-extensions",
- "-isystem",
- "include/vendor/libc",
- "-I",
- "include",
- "-o",
- "build/libn/flate.o",
- "sys/libn/flate.c"
- ],
- "directory": "/home/nolln/root",
- "file": "sys/libn/flate.c"
- },
- {
- "arguments": [
- "gcc",
- "-c",
- "-g",
- "-march=native",
- "-fno-strict-aliasing",
- "-fwrapv",
- "-fms-extensions",
- "-isystem",
- "include/vendor/libc",
- "-I",
- "include",
- "-o",
- "build/libn/bufio.o",
- "sys/libn/bufio.c"
- ],
- "directory": "/home/nolln/root",
- "file": "sys/libn/bufio.c"
- },
- {
- "arguments": [
- "gcc",
- "-c",
- "-g",
- "-march=native",
- "-fno-strict-aliasing",
- "-fwrapv",
- "-fms-extensions",
- "-isystem",
- "include/vendor/libc",
- "-I",
- "include",
- "-o",
- "build/cmd/cat/cat.o",
- "sys/cmd/cat/cat.c"
- ],
- "directory": "/home/nolln/root",
- "file": "sys/cmd/cat/cat.c"
- },
- {
- "arguments": [
- "gcc",
- "-c",
- "-g",
- "-march=native",
- "-fno-strict-aliasing",
- "-fwrapv",
- "-fms-extensions",
- "-isystem",
- "include/vendor/libc",
- "-I",
- "include",
- "-o",
- "build/libbio/test.o",
- "sys/libbio/test.c"
- ],
- "directory": "/home/nolln/root",
- "file": "sys/libbio/test.c"
- },
- {
- "arguments": [
- "gcc",
- "-c",
- "-g",
- "-march=native",
- "-fno-strict-aliasing",
- "-fwrapv",
- "-fms-extensions",
- "-isystem",
- "include/vendor/libc",
- "-I",
- "include",
- "-o",
- "build/libn/random.o",
- "sys/libn/random.c"
- ],
- "directory": "/home/nolln/root",
- "file": "sys/libn/random.c"
- },
- {
- "arguments": [
- "gcc",
- "-c",
- "-g",
- "-march=native",
- "-fno-strict-aliasing",
- "-fwrapv",
- "-fms-extensions",
- "-isystem",
- "include/vendor/libc",
- "-I",
- "include",
- "-o",
- "build/libmath/basic.o",
- "sys/libmath/basic.c"
- ],
- "directory": "/home/nolln/root",
- "file": "sys/libmath/basic.c"
- },
- {
- "arguments": [
- "gcc",
- "-c",
- "-g",
- "-march=native",
- "-fno-strict-aliasing",
- "-fwrapv",
- "-fms-extensions",
- "-isystem",
- "include/vendor/libc",
- "-I",
- "include",
- "-o",
- "build/libbio/simulate.o",
- "sys/libbio/simulate.c"
- ],
- "directory": "/home/nolln/root",
- "file": "sys/libbio/simulate.c"
- },
- {
- "arguments": [
- "gcc",
- "-c",
- "-g",
- "-march=native",
- "-fno-strict-aliasing",
- "-fwrapv",
- "-fms-extensions",
- "-isystem",
- "include/vendor/libc",
- "-I",
- "include",
- "-o",
- "build/libbio/io/newick.o",
- "sys/libbio/io/newick.c"
- ],
- "directory": "/home/nolln/root",
- "file": "sys/libbio/io/newick.c"
- },
- {
- "arguments": [
- "gcc",
- "-c",
- "-g",
- "-march=native",
- "-fno-strict-aliasing",
- "-fwrapv",
- "-fms-extensions",
- "-isystem",
- "include/vendor/libc",
- "-I",
- "include",
- "-o",
- "build/libn/sort.o",
- "sys/libn/sort.c"
- ],
- "directory": "/home/nolln/root",
- "file": "sys/libn/sort.c"
- },
- {
- "arguments": [
- "gcc",
- "-c",
- "-g",
- "-march=native",
- "-fno-strict-aliasing",
- "-fwrapv",
- "-fms-extensions",
- "-isystem",
- "include/vendor/libc",
- "-I",
- "include",
- "-o",
- "build/libbio/io/fasta.o",
- "sys/libbio/io/fasta.c"
- ],
- "directory": "/home/nolln/root",
- "file": "sys/libbio/io/fasta.c"
- },
- {
- "arguments": [
- "gcc",
- "-c",
- "-g",
- "-march=native",
- "-fno-strict-aliasing",
- "-fwrapv",
- "-fms-extensions",
- "-isystem",
- "include/vendor/libc",
- "-I",
- "include",
- "-o",
- "build/libmath/blas1.o",
- "sys/libmath/blas1.c"
- ],
- "directory": "/home/nolln/root",
- "file": "sys/libmath/blas1.c"
- },
- {
- "arguments": [
- "gcc",
- "-c",
- "-g",
- "-march=native",
- "-fno-strict-aliasing",
- "-fwrapv",
- "-fms-extensions",
- "-isystem",
- "include/vendor/libc",
- "-I",
- "include",
- "-o",
- "build/libn/io.o",
- "sys/libn/io.c"
- ],
- "directory": "/home/nolln/root",
- "file": "sys/libn/io.c"
- },
- {
- "arguments": [
- "gcc",
- "-c",
- "-g",
- "-march=native",
- "-fno-strict-aliasing",
- "-fwrapv",
- "-fms-extensions",
- "-isystem",
- "include/vendor/libc",
- "-I",
- "include",
- "-o",
- "build/libn/string.o",
- "sys/libn/string.c"
- ],
- "directory": "/home/nolln/root",
- "file": "sys/libn/string.c"
- },
- {
- "arguments": [
- "gcc",
- "-c",
- "-g",
- "-march=native",
- "-fno-strict-aliasing",
- "-fwrapv",
- "-fms-extensions",
- "-isystem",
- "include/vendor/libc",
- "-I",
- "include",
- "-o",
- "build/libn/mmap.o",
- "sys/libn/mmap.c"
- ],
- "directory": "/home/nolln/root",
- "file": "sys/libn/mmap.c"
- },
- {
- "arguments": [
- "gcc",
- "-c",
- "-g",
- "-march=native",
- "-fno-strict-aliasing",
- "-fwrapv",
- "-fms-extensions",
- "-isystem",
- "include/vendor/libc",
- "-I",
- "include",
- "-o",
- "build/libn/gz.o",
- "sys/libn/gz.c"
- ],
- "directory": "/home/nolln/root",
- "file": "sys/libn/gz.c"
- },
- {
- "arguments": [
- "gcc",
- "-c",
- "-g",
- "-march=native",
- "-fno-strict-aliasing",
- "-fwrapv",
- "-fms-extensions",
- "-isystem",
- "include/vendor/libc",
- "-I",
- "include",
- "-o",
- "build/libn/test.o",
- "sys/libn/test.c"
- ],
- "directory": "/home/nolln/root",
- "file": "sys/libn/test.c"
- },
- {
- "arguments": [
- "gcc",
- "-c",
- "-g",
- "-march=native",
- "-fno-strict-aliasing",
- "-fwrapv",
- "-fms-extensions",
- "-ffreestanding",
- "-fno-builtin",
- "-nostdlib",
- "-isystem",
- "include/vendor/libc",
- "-I",
- "include",
- "-o",
- "build/libc/string.o",
- "sys/libc/string.c"
- ],
- "directory": "/home/nolln/root",
- "file": "sys/libc/string.c"
- },
- {
- "arguments": [
- "gcc",
- "-c",
- "-g",
- "-march=native",
- "-fno-strict-aliasing",
- "-fwrapv",
- "-fms-extensions",
- "-isystem",
- "include/vendor/libc",
- "-I",
- "include",
- "-o",
- "build/libn/coro.o",
- "sys/libn/coro.c"
- ],
- "directory": "/home/nolln/root",
- "file": "sys/libn/coro.c"
- },
- {
- "arguments": [
- "gcc",
- "-c",
- "-g",
- "-march=native",
- "-fno-strict-aliasing",
- "-fwrapv",
- "-fms-extensions",
- "-isystem",
- "include/vendor/libc",
- "-I",
- "include",
- "-o",
- "build/libmath/linalg.o",
- "sys/libmath/linalg.c"
- ],
- "directory": "/home/nolln/root",
- "file": "sys/libmath/linalg.c"
- },
- {
- "arguments": [
- "gcc",
- "-c",
- "-g",
- "-march=native",
- "-fno-strict-aliasing",
- "-fwrapv",
- "-fms-extensions",
- "-isystem",
- "include/vendor/libc",
- "-I",
- "include",
- "-o",
- "build/libn/memory.o",
- "sys/libn/memory.c"
- ],
- "directory": "/home/nolln/root",
- "file": "sys/libn/memory.c"
- },
- {
- "arguments": [
- "gcc",
- "-c",
- "-g",
- "-march=native",
- "-fno-strict-aliasing",
- "-fwrapv",
- "-fms-extensions",
- "-isystem",
- "include/vendor/libc",
- "-I",
- "include",
- "-o",
"build/cmd/cc/lex.o",
"sys/cmd/cc/lex.c"
],
@@ -541,66 +33,6 @@
"-I",
"include",
"-o",
- "build/libbio/align.o",
- "sys/libbio/align.c"
- ],
- "directory": "/home/nolln/root",
- "file": "sys/libbio/align.c"
- },
- {
- "arguments": [
- "gcc",
- "-c",
- "-g",
- "-march=native",
- "-fno-strict-aliasing",
- "-fwrapv",
- "-fms-extensions",
- "-isystem",
- "include/vendor/libc",
- "-I",
- "include",
- "-o",
- "build/cmd/cc/cc.o",
- "sys/cmd/cc/cc.c"
- ],
- "directory": "/home/nolln/root",
- "file": "sys/cmd/cc/cc.c"
- },
- {
- "arguments": [
- "gcc",
- "-c",
- "-g",
- "-march=native",
- "-fno-strict-aliasing",
- "-fwrapv",
- "-fms-extensions",
- "-isystem",
- "include/vendor/libc",
- "-I",
- "include",
- "-o",
- "build/libn/error.o",
- "sys/libn/error.c"
- ],
- "directory": "/home/nolln/root",
- "file": "sys/libn/error.c"
- },
- {
- "arguments": [
- "gcc",
- "-c",
- "-g",
- "-march=native",
- "-fno-strict-aliasing",
- "-fwrapv",
- "-fms-extensions",
- "-isystem",
- "include/vendor/libc",
- "-I",
- "include",
- "-o",
"build/cmd/cc/pp.o",
"sys/cmd/cc/pp.c"
],
diff --git a/sys/cmd/cc/cc.c b/sys/cmd/cc/cc.c
index 6338050..00cd4a5 100644
--- a/sys/cmd/cc/cc.c
+++ b/sys/cmd/cc/cc.c
@@ -130,13 +130,13 @@ openio(byte *path)
}
Io*
-makeio()
+makeio(byte *name)
{
if ((C.io - C.iostk) >= arrlen(C.iostk)-1)
panicf("out of I/O space!");
- C.io->path = "<buffer>";
- C.io->buf = (io·Buffer) {
+ C.io->path = name;
+ C.io->buf = (io·Buffer) {
.state = bufio·rdr | bufio·end,
.runesize = 0,
.h = nil,
@@ -163,6 +163,7 @@ freeio(Io *io)
io->link = nil;
io->path = nil;
io->store = (Pos){ 0 };
+ io->path = "<empty>";
}
void
diff --git a/sys/cmd/cc/cc.h b/sys/cmd/cc/cc.h
index 6ed2caa..685dce2 100644
--- a/sys/cmd/cc/cc.h
+++ b/sys/cmd/cc/cc.h
@@ -388,7 +388,7 @@ struct Io
/* cc.c io functions */
Io* openio(byte *path);
-Io* makeio();
+Io* makeio(byte *name);
void freeio(Io *io);
struct StrTab
diff --git a/sys/cmd/cc/lex.c b/sys/cmd/cc/lex.c
index 8ce4e79..4cc1259 100644
--- a/sys/cmd/cc/lex.c
+++ b/sys/cmd/cc/lex.c
@@ -635,8 +635,8 @@ Dispatch:
}
sym = lookup(&lx->sym, tok.val.s);
- if (sym) {
- io = makeio();
+ if (sym && ((uintptr)sym->name != (uintptr)lx->io->path)) {
+ io = makeio(sym->name);
printf("EXPANDING MACRO %s\n", sym->name);
io->buf.end += expandmacro(lx, sym, io->b);
*io->buf.end++ = EOF;