diff options
Diffstat (limited to 'src/interfaces/ecpg/preproc/extern.h')
-rw-r--r-- | src/interfaces/ecpg/preproc/extern.h | 53 |
1 files changed, 7 insertions, 46 deletions
diff --git a/src/interfaces/ecpg/preproc/extern.h b/src/interfaces/ecpg/preproc/extern.h index c7bb651a586..d5bc1fc9cab 100644 --- a/src/interfaces/ecpg/preproc/extern.h +++ b/src/interfaces/ecpg/preproc/extern.h @@ -1,63 +1,23 @@ #include "parser/keywords.h" +#include "type.h" #include <errno.h> /* variables */ extern int braces_open, - no_auto_trans; + no_auto_trans, struct_level; extern char *yytext; extern int yylineno, yyleng; extern FILE *yyin, *yyout; -struct _include_path -{ - char *path; - struct _include_path *next; -}; - extern struct _include_path *include_paths; - -struct cursor -{ - char *name; - char *command; - struct arguments *argsinsert; - struct arguments *argsresult; - struct cursor *next; -}; - extern struct cursor *cur; - -struct _defines -{ - char *old; - char *new; - struct _defines *next; -}; - +extern struct typedefs *types; extern struct _defines *defines; - -/* This is a linked list of the variable names and types. */ -struct variable -{ - char *name; - struct ECPGtype *type; - int brace_level; - struct variable *next; -}; - extern struct ECPGtype ecpg_no_indicator; extern struct variable no_indicator; - -struct arguments -{ - struct variable *variable; - struct variable *indicator; - struct arguments *next; -}; - extern struct arguments *argsinsert; extern struct arguments *argsresult; @@ -74,9 +34,10 @@ extern void yyerror(char *); /* return codes */ -#define OK 0 -#define PARSE_ERROR -1 -#define ILLEGAL_OPTION -2 +#define OK 0 +#define PARSE_ERROR -1 +#define ILLEGAL_OPTION -2 +#define INDICATOR_NOT_ARRAY -3 #define NO_INCLUDE_FILE ENOENT #define OUT_OF_MEMORY ENOMEM |