ref: 0ced9f82d61c1273c4eca71f19aba50a51275489
parent: 6812f3ae0c8757436b3f4c0d66fcd986237b663e
author: cinap_lenrek <cinap_lenrek@rei2.9hal>
date: Sat Feb 11 08:05:34 EST 2012
acid: fix format string bugs and comment line counting (from eriks patch/acid-nits patch)
--- a/sys/src/cmd/acid/acid.h
+++ b/sys/src/cmd/acid/acid.h
@@ -243,6 +243,10 @@
int yylex(void);
int yyparse(void);
+#pragma varargck argpos error 1
+#pragma varargck argpos fatal 1
+#pragma varargck argpos yyerror 1
+
enum
{ONAME,
--- a/sys/src/cmd/acid/expr.c
+++ b/sys/src/cmd/acid/expr.c
@@ -537,7 +537,7 @@
res->op = OCONST;
res->type = TINT;
if(l.type != TINT || r.type != TINT)
- error("bad expr type %");+ error("bad expr type %%");res->ival = l.ival%r.ival;
}
--- a/sys/src/cmd/acid/lex.c
+++ b/sys/src/cmd/acid/lex.c
@@ -329,6 +329,14 @@
case '\t':
goto loop;
+ case '/':
+ c = lexc();
+ if(c != '/'){+ unlexc(c);
+ return '/';
+ }
+ eatnl();
+
case '\n':
line++;
if(interactive == 0)
@@ -390,15 +398,6 @@
return Tinc;
unlexc(c);
return '+';
-
- case '/':
- c = lexc();
- if(c == '/') {- eatnl();
- goto loop;
- }
- unlexc(c);
- return '/';
case '\'':
c = lexc();
--- a/sys/src/cmd/acid/main.c
+++ b/sys/src/cmd/acid/main.c
@@ -162,7 +162,7 @@
text = open(aout, OREAD);
if(text < 0)
- error("%s: can't open %s: %r\n", argv0, aout);+ error("%s: can't open %s: %r", argv0, aout);readtext(aout);
}
if(pid) /* pid given */
@@ -273,7 +273,7 @@
print("%s: (error) loadmap: cannot make symbol map\n", argv0); if(syminit(text, &fhdr) < 0) {- print("%s: (error) syminit: %r\n", argv0);+ print("%s: (error) syminit: %r", argv0);return;
}
print("%s:%s\n", s, fhdr.name);--- a/sys/src/cmd/acid/proc.c
+++ b/sys/src/cmd/acid/proc.c
@@ -87,7 +87,7 @@
open("/dev/cons", OWRITE); open("/dev/cons", OWRITE);exec(argv[0], argv);
- fatal("new: exec %s: %r");+ fatal("new: exec %s: %r", argv[0]);default:
install(pid);
msg(pid, "waitstop");
--- a/sys/src/cmd/acid/util.c
+++ b/sys/src/cmd/acid/util.c
@@ -203,7 +203,7 @@
break;
}
if(ret < 0)
- error("can't get register %s: %r\n", reg);+ error("can't get register %s: %r", reg);return v;
}
--
⑨