X-Git-Url: https://git.m6w6.name/?a=blobdiff_plain;ds=sidebyside;f=src%2Fcpp.c;h=c436ef33bf33f46ef0e0aeaa65e9dd79d618b089;hb=e918b10a9b5a8de154d12385665728f7408e5cc7;hp=4b11c25fc4e49ef1d441537612e5ce6d13bdc4b2;hpb=44bd65fe60fb83fa4c3bbb0d4c679d2b70a096df;p=m6w6%2Fext-psi diff --git a/src/cpp.c b/src/cpp.c index 4b11c25..c436ef3 100644 --- a/src/cpp.c +++ b/src/cpp.c @@ -317,12 +317,7 @@ static bool psi_cpp_stage2(struct psi_cpp *cpp) } if (do_expansion && psi_cpp_defined(cpp, current)) { - bool expanded = false; - if (psi_cpp_tokiter_expand(cpp)) { - expanded = true; - } - if (expanded) { continue; } } @@ -334,13 +329,7 @@ static bool psi_cpp_stage2(struct psi_cpp *cpp) bool parsed; cpp->do_cpp = false; - parsed = psi_parser_process(cpp->parser, cpp->tokens.exec, &processed); - - /* leave EOLs in the input stream, else we might end up - * with a hash not preceded with a new line after include */ - psi_cpp_tokiter_add(cpp, current); - psi_plist_pop(cpp->tokens.exec, NULL); psi_plist_clean(cpp->tokens.exec); if (!parsed) { @@ -515,7 +504,10 @@ bool psi_cpp_include(struct psi_cpp *cpp, const struct psi_token *file, unsigned return false; } + ++cpp->include_level; parsed = psi_cpp_process(cpp, &tokens, NULL); + --cpp->include_level; + if (!parsed) { psi_plist_free(tokens); return false;