X-Git-Url: http://nsz.repo.hu/git/?a=blobdiff_plain;f=preprocessor.h;h=5757672e3616cd202248dc0d0cb18b02c028dd51;hb=10842603c042d3c62f128519d6356b3817b6a0db;hp=eca93c2ec0345d476b11ba4141355cd588a753ae;hpb=8fa554cc9df6322f749cd68c7c26100228e9856d;p=cparser diff --git a/preprocessor.h b/preprocessor.h index eca93c2..5757672 100644 --- a/preprocessor.h +++ b/preprocessor.h @@ -7,8 +7,10 @@ void init_preprocessor(void); void exit_preprocessor(void); +typedef struct searchpath_entry_t searchpath_entry_t; + /** Switch input to another file. The current token is not changed. */ -void switch_pp_input(FILE *file, char const *filename); +void switch_pp_input(FILE *file, char const *filename, searchpath_entry_t *entry, bool is_system_header); FILE *close_pp_input(void); @@ -23,4 +25,14 @@ void set_preprocessor_output(FILE *output); void emit_pp_token(void); void check_unclosed_conditionals(void); +typedef struct searchpath_t searchpath_t; +extern searchpath_t bracket_searchpath; /**< paths for < > includes */ +extern searchpath_t quote_searchpath; /**< paths for " " includes */ +extern searchpath_t system_searchpath; /**< system searchpath (appended to + quote searchpath) */ +extern searchpath_t after_searchpath; /**< searchpath for -idirafter (also system paths) */ + +void init_include_paths(void); +void append_include_path(searchpath_t *searchpath, const char *path); + #endif