Closed llvmbot closed 9 years ago
This API break in should've been fixed r222336. The clang-tools-extra repo is separate from clang, so you have to make sure to update it along with clang and llvm when you update them. Please reopen if you still have issues.
Extended Description
Did a git pull on llvm and clang on my Ubuntu 14.04 laptop with all current patches so I could do some work at a conference investigating a code generation (performance, not correctness) bug (that was present) in clang 3.4.2, i.e., to ensure that the bug was still present.
make failed after crunching for a couple of hours with complaints about not finding an iterator deep in the bowels of clang. (Sorry, the sysout from make s long gone) I then did "svn update" for both llvm and clang to (trunk 222399), did a vanilla reconfigure, make clean, and make. The process failed somewhere lse with complaints about not finding some directory related to gcc. (Sorry, that's gone too.) At that point I uninstalled and reinstalled gcc/g+ 4.8.2 binaries from the Ubuntu repository. I also decided to accelerate the process, so I cut back on the target set. In the penultimate iteration:
build$ ../llvm/configure --prefix=/home/xxx --enable-targets="nvptx x86_64"
build$ make
<< lots elided >>
llvm[5]: Compiling PreprocessorTracker.cpp for Debug+Asserts build /home/rjf/LLVM-clang/llvm/tools/clang/tools/extra/modularize/PreprocessorTracker.cpp: In member function ‘void Modularize::PreprocessorTrackerImpl::handleHeaderEntry(clang::Preprocessor&, llvm::StringRef)’: /home/rjf/LLVM-clang/llvm/tools/clang/tools/extra/modularize/PreprocessorTracker.cpp:960:24: error: no match for ‘operator!’ (operand type is ‘std::pair<llvm::NoneType, bool>’) InNestedHeader = !HeadersInThisCompile.insert(H); ^ /home/rjf/LLVM-clang/llvm/tools/clang/tools/extra/modularize/PreprocessorTracker.cpp:960:24: note: candidate is: /home/rjf/LLVM-clang/llvm/tools/clang/tools/extra/modularize/PreprocessorTracker.cpp:960:24: note: operator!(bool)
/home/rjf/LLVM-clang/llvm/tools/clang/tools/extra/modularize/PreprocessorTracker.cpp:960:24:
note: no known conversion for argument 1 from
‘std::pair<llvm::NoneType, bool>’ to ‘bool’
<< make continued past this point, but eventually bails from this error.>>
At that point I got rid of the extras directories in the distribution tree and all was copacetic regarding subsequent make and make install of the mainline clang, etc.