bloomberg/bde_verify

Building bde_verify fails against clang 3.8, succeeds against 4.0

weyfonk opened this issue · 1 comments

EDIT: Just realised I had been using branch debian all along instead of master; it seems the former is the default branch. master builds against clang 3.8. Keeping this in case some of it is of interest to you, otherwise sorry for the noise.

I have tried to build bde_verify against clang 3.8 as required by the README, but got the following output:

Makefile:369: Linux-g++/make.depend: No such file or directory
analysing dependencies
make[1]: Entering directory '/home/weyfonk/bde_verify/groups/csa/csabase'
compiling csabase_analyser.cpp
csabase_analyser.cpp: In member function ‘int csabase::Analyser::ReplaceText(llvm::StringRef, unsigned int, unsigned int, llvm::StringRef)’:
csabase_analyser.cpp:750:14: error: ‘clang::tooling::Replacements {aka class std::set<clang::tooling::Replacement>}’ has no member named ‘add’
     if (!one.add(r)) {
              ^~~
csabase_analyser.cpp:751:39: error: ‘clang::tooling::Replacements {aka class std::set<clang::tooling::Replacement>}’ has no member named ‘merge’
         replacements_ = replacements_.merge(one);
                                       ^~~~~
Makefile:82: recipe for target 'Linux-g++/csabase_analyser.o' failed
make[1]: *** [Linux-g++/csabase_analyser.o] Error 1
make[1]: Leaving directory '/home/weyfonk/bde_verify/groups/csa/csabase'
Makefile:271: recipe for target 'groups/csa/csabase/Linux-g++/libbde-verify.a' failed
make: *** [groups/csa/csabase/Linux-g++/libbde-verify.a] Error 2

Trying it again with clang 3.9 (both 3.8 and 3.9 are packaged for Debian Stretch, which I am using) gave the same result, however a build against a manually built clang 4.0 was successful.