uxn

Varvara Ordinator, written in ANSI C(SDL2)
git clone https://git.eamoncaddigan.net/uxn.git
Log | Files | Refs | README | LICENSE

commit aafef20ba5e280e9a93c728d57c112ed889c7a2e
parent 03caf9317b3230e2c81b51c49751e26eb1cd250f
Author: Devine Lu Linvega <aliceffekt@gmail.com>
Date:   Wed, 27 Mar 2024 13:23:16 -0700

(uxnasm) Increment line value at pointer

Diffstat:
Metc/hello.tal | 1+
Msrc/uxnasm.c | 8++++----
2 files changed, 5 insertions(+), 4 deletions(-)

diff --git a/etc/hello.tal b/etc/hello.tal @@ -18,6 +18,7 @@ POP2 #010f DEO + @1234 BRK diff --git a/src/uxnasm.c b/src/uxnasm.c @@ -55,7 +55,7 @@ static char *push(char *s, char c) { char *o = dictnext; while((*dictnext++ = *s #define findlabel(x) finditem(x, labels, label_len) #define findmacro(x) finditem(x, macros, macro_len) #define error_top(name, msg) !fprintf(stderr, "%s: %s\n", name, msg) -#define error_asm(name) !fprintf(stderr, "%s: %s in @%s, %s:%d.\n", name, token, scope, source, ln) +#define error_asm(name) !fprintf(stderr, "%s: %s in @%s, %s:%d.\n", name, token, scope, source, *ln) /* clang-format on */ @@ -105,7 +105,7 @@ walkcomment(FILE *f, int *ln) char c; int depth = 1; while(f && fread(&c, 1, 1, f)) { - if(c == 0xa) ln++; + if(c == 0xa) *ln++; if(c == '(') depth++; if(c == ')' && --depth < 1) return 1; } @@ -160,9 +160,9 @@ makemacro(char *name, FILE *f, int *ln) m->name = push(name, 0); m->content = dictnext; while(f && fread(&c, 1, 1, f) && c != '{') - if(c == 0xa) ln++; + if(c == 0xa) *ln++; while(f && fread(&c, 1, 1, f) && c != '}') { - if(c == 0xa) ln++; + if(c == 0xa) *ln++; if(c == '%') return 0; if(c == '(') walkcomment(f, ln); *dictnext++ = c;