327
|
1 /* for mc-parse.c */
|
|
2
|
|
3 extern int sym,type,mode,stmode;
|
|
4 extern int labelno,gpc,disp;
|
357
|
5 extern int args,init_vars;
|
327
|
6 extern int cslabel,control;
|
|
7 extern NMTBL *nptr,*gnptr;
|
|
8 extern NMTBL *fnptr;
|
|
9 extern int gtypedefed;
|
|
10 extern int retlabel,retpending,retcont;
|
|
11 extern int chk;
|
329
|
12 #if BIT_FIELD_CODE
|
327
|
13 extern int bit_field_disp;
|
|
14 #endif
|
|
15 extern int fields;
|
|
16 extern int struct_return;
|
|
17 extern int lastexp;
|
|
18 extern int debug;
|
328
|
19 extern int decl_str_init;
|
|
20
|
346
|
21 /*
|
|
22 STRING nptr
|
|
23 MACRO nptr
|
|
24 FMACRO nptr
|
|
25 RESERVE nptr
|
|
26 TAG nptr
|
|
27 FIELD nptr
|
|
28 TYPE nptr
|
|
29 */
|
|
30
|
|
31 typedef struct cheap
|
|
32 {
|
|
33 char *ptr;
|
|
34 char *last;
|
|
35 char *first;
|
|
36 struct cheap *next;
|
|
37 } CHEAP;
|
|
38
|
327
|
39
|
|
40 /* used in mc-macro.c */
|
|
41
|
|
42 extern int asmf;
|
|
43 extern int ch;
|
|
44 extern int chptrsave;
|
|
45 extern int chsave;
|
346
|
46 extern char linebuf[LBUFSIZE],*chptr;
|
327
|
47 extern int glineno;
|
|
48 extern int in_comment;
|
|
49 extern int in_quote;
|
|
50 extern int lfree;
|
|
51 extern int lineno;
|
|
52 extern int lsrc;
|
|
53 extern char *include_path[MAX_INCLUDE_PATH_COUNT];
|
|
54
|
|
55 /* used in mc-code-* */
|
|
56
|
|
57 extern NMTBL null_nptr;
|
|
58
|
346
|
59 extern char * make_filename_with_extension(char *filename,char *ext);
|
|
60
|
327
|
61 /* used in mc-switch */
|
|
62
|
|
63 extern void free_glist3(int e1);
|
|
64 extern int csvalue1;
|
|
65 extern int blabel,dlabel;
|
|
66
|
|
67 /* used in mc-tree.c */
|
|
68
|
|
69 extern int typedefed;
|
|
70
|
|
71 /* global variable end */
|
|
72
|
|
73 extern void free_glist2(int e1);
|
|
74
|
|
75 /* used in mc-codegen.c */
|
|
76
|
|
77 extern NMTBL * anonymous_nptr();;
|
|
78 extern int append4(int p,int a1,int a2,int a3);
|
|
79 extern void display_ntable(NMTBL *n, char *s);
|
355
|
80 extern NMTBL * lsearch(char *name,int sc);
|
327
|
81 #if FLOAT_CODE
|
|
82 extern int
|
|
83 dlist2(int e1, double d1);
|
|
84 #endif
|
|
85 extern void error(int n);
|
|
86 extern int glist2(int e1,int e2);
|
|
87 extern int glist3(int e1,int e2,int e3);
|
|
88
|
|
89 extern int insert_ascend(int p,int e,int eq());
|
|
90 extern int length(int list);
|
|
91 extern int list2(int e1, int e2);
|
|
92 extern int list3(int e1, int e2, int e3);
|
|
93 extern int list4(int e1, int e2, int e3, int e4);
|
|
94 extern void extern_define(char *s,int d,int type,int use);
|
|
95
|
|
96 #if LONGLONG_CODE
|
|
97 extern int llist2(int e1, long long d1);
|
|
98 #endif
|
|
99 extern int neqname(char *p,char *q);
|
347
|
100 extern NMTBL *new_static_name(char *name,int delimit);
|
327
|
101 extern int reverse0(int t1);
|
|
102 extern int size(int t);
|
|
103 extern int typespec(void);
|
|
104
|
|
105 /* used in mc-macro.c */
|
|
106
|
346
|
107 extern struct cheap *cheap;
|
350
|
108
|
|
109 extern NMTBL *get_name(char *name,int *i,int mode);
|
|
110 #define DEF 1
|
|
111 #define NONDEF 2
|
|
112
|
349
|
113 extern NMTBL * get_name_from_chptr();
|
347
|
114 extern NMTBL *name_space_search(NMTBL *ns,int sc);
|
346
|
115
|
327
|
116 extern int getsym(int sc);
|
|
117 extern int getch(void);
|
|
118 extern int skipspc(void);
|
|
119 extern void copy_current_file_dir(char *name);
|
|
120 extern int expr(int noconv);
|
|
121
|
|
122 extern int alpha(int c);
|
|
123 extern int digit(int c);
|
359
|
124 extern void enter_scope();
|
|
125 extern void leave_scope();
|
|
126 extern NMTBL *make_local_scope();
|
327
|
127
|
346
|
128 extern struct cheap * increment_cheap(struct cheap *cheap,char **save);
|
|
129 extern void save_cheap(struct cheap *scheap,struct cheap *cheap);
|
|
130 extern struct cheap * reset_cheap(struct cheap *scheap);
|
|
131
|
327
|
132 /* end */
|