Preprocessor API EnterTokenStream prototype changes with clang(++)9, leading to this compilation error:
$ make
Scanning dependencies of target codebrowser_generator
[ 8%] Building CXX object generator/CMakeFiles/codebrowser_generator.dir/main.cpp.o
[ 16%] Building CXX object generator/CMakeFiles/codebrowser_generator.dir/projectmanager.cpp.o
[ 25%] Building CXX object generator/CMakeFiles/codebrowser_generator.dir/annotator.cpp.o
[ 33%] Building CXX object generator/CMakeFiles/codebrowser_generator.dir/generator.cpp.o
[ 41%] Building CXX object generator/CMakeFiles/codebrowser_generator.dir/preprocessorcallback.cpp.o
./woboq_codebrowser/generator/preprocessorcallback.cpp: In member function ‘virtual void PreprocessorCallback::MacroExpands(const clang::Token&, PreprocessorCallback::MyMacroDefinition, clang::SourceRange, const clang::MacroArgs*)’:
./woboq_codebrowser/generator/preprocessorcallback.cpp:109:64: error: no matching function for call to ‘clang::Preprocessor::EnterTokenStream(std::vector<clang::Token, std::allocator<clang::Token> >&, bool)’
PP.EnterTokenStream(tokens, /*DisableMacroExpansion=*/false);
According to the documentation, a boolean is added in the prototype.
As I don't really know woboq internals + how clang is going to evolve in future minor revisions, I added a preprocessor macro handling clang9 case.
Preprocessor API EnterTokenStream prototype changes with clang(++)9, leading to this compilation error:
According to the documentation, a boolean is added in the prototype.
As I don't really know woboq internals + how clang is going to evolve in future minor revisions, I added a preprocessor macro handling clang9 case.
clang revision:
Thanks for this awesome project :+1: