summaryrefslogtreecommitdiff
path: root/soltools/cpp/cpp.h
diff options
context:
space:
mode:
Diffstat (limited to 'soltools/cpp/cpp.h')
-rw-r--r--soltools/cpp/cpp.h232
1 files changed, 0 insertions, 232 deletions
diff --git a/soltools/cpp/cpp.h b/soltools/cpp/cpp.h
deleted file mode 100644
index 5e862740d..000000000
--- a/soltools/cpp/cpp.h
+++ /dev/null
@@ -1,232 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/* $Id: cpp.h,v 1.4 2006-06-20 05:07:28 hr Exp $ */
-
-#define INS 32768 /* input buffer */
-#define OBS 8092 /* outbut buffer */
-#define NARG 32 /* Max number arguments to a macro */
-#define NINCLUDE 48 /* Max number of include directories (-I) */
-#define NIF 64 /* depth of nesting of #if */
-#define NINC 32 /* depth of nesting of #include */
-
-#ifndef EOF
-#define EOF (-1)
-#endif
-
-#ifndef NULL
-#define NULL 0
-#endif
-
-typedef unsigned char uchar;
-
-enum toktype
-{
- END, UNCLASS, NAME, NUMBER, STRING, CCON, NL, WS, DSHARP,
- EQ, NEQ, LEQ, GEQ, LSH, RSH, LAND, LOR, PPLUS, MMINUS,
- ARROW, SBRA, SKET, LP, RP, DOT, AND, STAR, PLUS, MINUS,
- TILDE, NOT, SLASH, PCT, LT, GT, CIRC, OR, QUEST,
- COLON, ASGN, COMMA, SHARP, SEMIC, CBRA, CKET,
- ASPLUS, ASMINUS, ASSTAR, ASSLASH, ASPCT, ASCIRC, ASLSH,
- ASRSH, ASOR, ASAND, ELLIPS,
- DSHARP1, NAME1, NAME2, DEFINED, UMINUS, ARCHITECTURE, IDENT,
- COMMENT
-};
-
-enum kwtype
-{
- KIF, KIFDEF, KIFNDEF, KELIF, KELSE, KENDIF, KINCLUDE, KINCLUDENEXT,
- KIMPORT, KDEFINE, KUNDEF, KLINE, KERROR, KPRAGMA, KIDENT, KDEFINED,
- KMACHINE, KLINENO, KFILE, KDATE, KTIME, KSTDC, KEVAL
-};
-
-#define ISDEFINED 0x01 /* has #defined value */
-#define ISKW 0x02 /* is PP keyword */
-#define ISUNCHANGE 0x04 /* can't be #defined in PP */
-#define ISMAC 0x08 /* builtin macro, e.g. __LINE__ */
-#define ISARCHITECTURE 0x10 /* architecture */
-#define ISACTIVE 0x80 /* is macro currently expanded */
-
-#define EOB 0xFE /* sentinel for end of input buffer */
-#define EOFC 0xFD /* sentinel for end of input file */
-#define XPWS 1 /* token flag: white space to assure token sep. */
-#define XTWS 2
-
-typedef struct token
-{
- unsigned char type;
- unsigned char flag;
- size_t wslen;
- size_t len;
- uchar *t;
- unsigned int identifier; /* used from macro processor to identify where a macro becomes valid again. */
-} Token;
-
-typedef struct tokenrow
-{
- Token *tp; /* current one to scan */
- Token *bp; /* base (allocated value) */
- Token *lp; /* last+1 token used */
- size_t max; /* number allocated */
-} Tokenrow;
-
-typedef struct source
-{
- char *filename; /* name of file of the source */
- int line; /* current line number */
- int lineinc; /* adjustment for \\n lines */
- uchar *inb; /* input buffer */
- uchar *inp; /* input pointer */
- uchar *inl; /* end of input */
- int fd; /* input source */
- int ifdepth; /* conditional nesting in include */
- int pathdepth;
- int wrap;
- struct source *next; /* stack for #include */
-} Source;
-
-typedef struct nlist
-{
- struct nlist *next;
- uchar *name;
- size_t len;
- Tokenrow *vp; /* value as macro */
- Tokenrow *ap; /* list of argument names, if any */
- char val; /* value as preprocessor name */
- char flag; /* is defined, is pp name */
- uchar *loc; /* location of definition */
-} Nlist;
-
-typedef struct includelist
-{
- char deleted;
- char always;
- char *file;
-} Includelist;
-
-typedef struct wraplist
-{
- char *file;
-} Wraplist;
-
-#define new(t) (t *)domalloc(sizeof(t))
-#define quicklook(a,b) (namebit[(a)&077] & (1<<((b)&037)))
-#define quickset(a,b) namebit[(a)&077] |= (1<<((b)&037))
-extern unsigned long namebit[077 + 1];
-
-enum errtype
-{
- INFO, WARNING, ERROR, FATAL
-};
-
-
-typedef struct macroValidator
-{
- Nlist * pMacro;
- unsigned int nTokenWhereMacroBecomesValid;
- struct macroValidator *
- pNext;
-} MacroValidator;
-typedef struct mvl
-{
- MacroValidator * pFirst;
- unsigned int nextFreeIdentifier;
-} MacroValidatorList;
-
-void mvl_init(
- MacroValidatorList *
- out_pValidators);
-void mvl_destruct(
- MacroValidatorList *
- out_pValidators);
-/* Adds MacroValidator to the list.
-*/
-void mvl_add(
- MacroValidatorList *
- inout_pValidators,
- Nlist * in_pMacro,
- Token * in_pTokenWhereMacroBecomesValid);
-
-/* Checks if one of the validators within the list points to
- the token in_pTokenToCheck. If so, the macro is set valid and
- the validator is removed.
-*/
-void mvl_check(
- MacroValidatorList *
- inout_pValidators,
- Token * inout_pTokenToCheck);
-
-void tokenrow_zeroTokenIdentifiers(Tokenrow* trp);
-
-void expandlex(void);
-void fixlex(void);
-void setup(int, char **);
-int gettokens(Tokenrow *, int);
-int comparetokens(Tokenrow *, Tokenrow *);
-Source *setsource(char *, int, int, char *, int);
-void unsetsource(void);
-void puttokens(Tokenrow *);
-void process(Tokenrow *);
-void *domalloc(size_t);
-void dofree(void *);
-void error(enum errtype, char *,...);
-void flushout(void);
-int fillbuf(Source *);
-int trigraph(Source *);
-int foldline(Source *);
-Nlist *lookup(Token *, int);
-void control(Tokenrow *);
-void dodefine(Tokenrow *);
-void doadefine(Tokenrow *, int);
-void doinclude(Tokenrow *, int, int);
-void doif(Tokenrow *, enum kwtype);
-void expand(Tokenrow *, Nlist *, MacroValidatorList *);
-void builtin(Tokenrow *, int);
-int gatherargs(Tokenrow *, Tokenrow **, int *);
-void substargs(Nlist *, Tokenrow *, Tokenrow **);
-void expandrow(Tokenrow *, char *);
-void maketokenrow(int, Tokenrow *);
-Tokenrow *copytokenrow(Tokenrow *, Tokenrow *);
-Token *growtokenrow(Tokenrow *);
-Tokenrow *normtokenrow(Tokenrow *);
-void adjustrow(Tokenrow *, int);
-void movetokenrow(Tokenrow *, Tokenrow *);
-void insertrow(Tokenrow *, int, Tokenrow *);
-void peektokens(Tokenrow *, char *);
-void doconcat(Tokenrow *);
-Tokenrow *stringify(Tokenrow *);
-int lookuparg(Nlist *, Token *);
-long eval(Tokenrow *, int);
-void genline(void);
-void genimport(char *, int, char *, int);
-void genwrap(int);
-void setempty(Tokenrow *);
-void makespace(Tokenrow *, Token *);
-char *outnum(char *, int);
-int digit(int);
-uchar *newstring(uchar *, size_t, size_t);
-
-#define rowlen(tokrow) ((tokrow)->lp - (tokrow)->bp)
-
-extern char *outptr;
-extern Token nltoken;
-extern Source *cursource;
-extern char *curtime;
-extern int incdepth;
-extern int ifdepth;
-extern int ifsatisfied[NIF];
-extern int Mflag;
-extern int Iflag;
-extern int Pflag;
-extern int Aflag;
-extern int Lflag;
-extern int Xflag;
-extern int Vflag;
-extern int Cflag;
-extern int Dflag;
-extern int Cplusplus;
-extern int skipping;
-extern Nlist *kwdefined;
-extern Includelist includelist[NINCLUDE];
-extern Wraplist wraplist[NINCLUDE];
-extern char wd[];
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */