bloomberg / bde_verify

Tool used to format, improve and verify code to BDE guidelines
Apache License 2.0
42 stars 21 forks source link

Building bde_verify fails against clang 3.8, succeeds against 4.0 #6

Open weyfonk opened 7 years ago

weyfonk commented 7 years ago

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.

hyrosen commented 7 years ago

I've been making changes to move bde_verify to LLVM 4. I'll check the README.

reply@reply.github.com At: 09/07/17 13:08:07" data-digest="From: reply@reply.github.com At: 09/07/17 13:08:07" style=""> From: reply@reply.github.com At: 09/07/17 13:08:07 To: bde_verify@noreply.github.com Cc: subscribed@noreply.github.com Subject: Re:[bloomberg/bde_verify] Building bde_verify fails against clang 3.8, succeeds against 4.0 (#6)

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}’ has no member named ‘add’ if (!one.add(r)) { ^~~ csabaseanalyser.cpp:751:39: error: ‘clang::tooling::Replacements {aka class std::set}’ 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. I am not sure whether this is of interest to you, but thought I would report it in case the README needs updating (which I can of course do via a PR if relevant).
— You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub, or mute the thread.