]> git.lizzy.rs Git - plan9front.git/blobdiff - sys/src/cmd/va/a.h
?a, cc: fix buffer overflows in built-in preprocessor (macbody)
[plan9front.git] / sys / src / cmd / va / a.h
old mode 100755 (executable)
new mode 100644 (file)
index 9b1f4da..63bec80
@@ -2,10 +2,7 @@
 #include <libc.h>
 #include <bio.h>
 #include "../vc/v.out.h"
-
-#ifndef        EXTERN
-#define        EXTERN  extern
-#endif
+#include "../cc/compat.h"
 
 typedef        struct  Sym     Sym;
 typedef        struct  Gen     Gen;
@@ -94,14 +91,12 @@ EXTERN      int     nDlist;
 EXTERN Hist*   ehist;
 EXTERN int     newflag;
 EXTERN Hist*   hist;
-EXTERN char*   hunk;
 EXTERN char*   include[NINCLUDE];
 EXTERN Io*     iofree;
 EXTERN Io*     ionext;
 EXTERN Io*     iostack;
 EXTERN long    lineno;
 EXTERN int     nerrors;
-EXTERN long    nhunk;
 EXTERN int     nosched;
 EXTERN int     ninclude;
 EXTERN Gen     nullgen;
@@ -114,11 +109,8 @@ EXTERN     int     sym;
 EXTERN char    symb[NSYMB];
 EXTERN int     thechar;
 EXTERN char*   thestring;
-EXTERN long    thunk;
 EXTERN Biobuf  obuf;
 
-void*  alloc(long);
-void*  allocn(void*, long, long);
 void   errorexit(void);
 void   pushio(void);
 void   newio(void);
@@ -144,7 +136,7 @@ Sym*        getsym(void);
 void   domacro(void);
 void   macund(void);
 void   macdef(void);
-void   macexpand(Sym*, char*);
+void   macexpand(Sym*, char*, int);
 void   macinc(void);
 void   maclin(void);
 void   macprag(void);
@@ -154,29 +146,7 @@ void       outhist(void);
 void   dodefine(char*);
 void   prfile(long);
 void   linehist(char*, int);
-void   gethunk(void);
 void   yyerror(char*, ...);
 int    yyparse(void);
 void   setinclude(char*);
 int    assemble(char*);
-
-/*
- *     system-dependent stuff from ../cc/compat.c
- */
-
-enum                           /* keep in synch with ../cc/cc.h */
-{
-       Plan9   = 1<<0,
-       Unix    = 1<<1,
-       Windows = 1<<2
-};
-int    mywait(int*);
-int    mycreat(char*, int);
-int    systemtype(int);
-int    pathchar(void);
-char*  mygetwd(char*, int);
-int    myexec(char*, char*[]);
-int    mydup(int, int);
-int    myfork(void);
-int    mypipe(int*);
-void*  mysbrk(ulong);