comparison lwcc/cpp.h @ 304:d85d173ba120 ccdev

Checkpoint lwcc development - preprocessor is runnable but nonfunctional The preprocessor is currently runnable but doesn't actually do anything useful. This is just a checkpoint.
author William Astle <lost@l-w.ca>
date Tue, 17 Sep 2013 19:33:41 -0600
parents 8d6c47395653
children b08787e5b9f3
comparison
equal deleted inserted replaced
303:659e0e4ce50c 304:d85d173ba120
65 struct expand_e *expand_list; // record of which macros are currently being expanded 65 struct expand_e *expand_list; // record of which macros are currently being expanded
66 char *lexstr; // for lexing a string (token pasting) 66 char *lexstr; // for lexing a string (token pasting)
67 int lexstrloc; // ditto 67 int lexstrloc; // ditto
68 struct preproc_info *n; // next in file stack 68 struct preproc_info *n; // next in file stack
69 struct preproc_info *filestack; // stack of saved files during include 69 struct preproc_info *filestack; // stack of saved files during include
70 struct strpool *strpool;
70 }; 71 };
71 72
72 extern struct preproc_info *preproc_init(const char *); 73 extern struct preproc_info *preproc_init(const char *);
73 extern struct token *preproc_next_token(struct preproc_info *); 74 extern struct token *preproc_next_token(struct preproc_info *);
74 extern struct token *preproc_next_processed_token(struct preproc_info *); 75 extern struct token *preproc_next_processed_token(struct preproc_info *);
76 extern void preproc_register_error_callback(struct preproc_info *, void (*)(const char *)); 77 extern void preproc_register_error_callback(struct preproc_info *, void (*)(const char *));
77 extern void preproc_register_warning_callback(struct preproc_info *, void (*)(const char *)); 78 extern void preproc_register_warning_callback(struct preproc_info *, void (*)(const char *));
78 extern void preproc_throw_error(struct preproc_info *, const char *, ...); 79 extern void preproc_throw_error(struct preproc_info *, const char *, ...);
79 extern void preproc_throw_warning(struct preproc_info *, const char *, ...); 80 extern void preproc_throw_warning(struct preproc_info *, const char *, ...);
80 extern void preproc_unget_token(struct preproc_info *, struct token *); 81 extern void preproc_unget_token(struct preproc_info *, struct token *);
82 extern struct token *preproc_next(struct preproc_info *);
81 83
82 #endif // cpp_h_seen___ 84 #endif // cpp_h_seen___