mirror of
https://github.com/Ponce/slackbuilds
synced 2024-11-21 19:42:24 +01:00
19ce1d0eb5
Signed-off-by: Willy Sudiarto Raharjo <willysr@slackbuilds.org>
38 lines
1.2 KiB
Diff
38 lines
1.2 KiB
Diff
diff --git a/gencode.c b/gencode.c
|
|
index 0909641..4d4ec8b 100644
|
|
--- a/gencode.c
|
|
+++ b/gencode.c
|
|
@@ -529,8 +529,11 @@ void solhook(char *s) {
|
|
vp->v.label.addr <= ftell(yyin) &&
|
|
vp->v.label.addr >=
|
|
ftell(yyin) - (int)strlen(s)) {
|
|
- (void)fprintf(yyout, "plt_%s:\n",
|
|
- vp->name);
|
|
+ static char *last_emitted;
|
|
+ if(last_emitted != vp->name) {
|
|
+ (void)fprintf(yyout, "plt_%s:\n", vp->name);
|
|
+ last_emitted = vp->name;
|
|
+ }
|
|
}
|
|
}
|
|
|
|
@@ -1227,6 +1230,10 @@ int execfile(char *t) {
|
|
(void)fprintf(yyout, "/* %s -- generated C code for %s */\n",
|
|
outfile, source);
|
|
(void)fputs("#include <stdio.h>\n", yyout);
|
|
+ (void)fputs("#include <string.h>\n", yyout);
|
|
+ (void)fputs("#include <unistd.h>\n", yyout);
|
|
+ (void)fputs("#include <stdlib.h>\n", yyout);
|
|
+ (void)fputs("extern char *gets(char *s);\n", yyout);
|
|
(void)fputs("#include \"pilot.h\"\n", yyout);
|
|
|
|
/* generate declarations for all non-system variables */
|
|
@@ -1256,7 +1263,7 @@ int execfile(char *t) {
|
|
(void)fputs(PASS2, stderr);
|
|
}
|
|
|
|
- (void)fputs("\nmain()\n{\n do_scrinit();\n", yyout);
|
|
+ (void)fputs("\nint main(int argc, char **argv)\n{\n do_scrinit();\n", yyout);
|
|
indent = 1;
|
|
}
|
|
|