[LLVMbugs] [Bug 24306] New: clang-format fails to link after libc++ cmake change in r243503

bugzilla-daemon at llvm.org bugzilla-daemon at llvm.org
Wed Jul 29 11:28:32 PDT 2015


https://llvm.org/bugs/show_bug.cgi?id=24306

            Bug ID: 24306
           Summary: clang-format fails to link after libc++ cmake change
                    in r243503
           Product: libc++
           Version: unspecified
          Hardware: PC
                OS: Linux
            Status: NEW
          Severity: normal
          Priority: P
         Component: All Bugs
          Assignee: unassignedclangbugs at nondot.org
          Reporter: hans at chromium.org
                CC: eric at efcs.ca, llvmbugs at cs.uiuc.edu,
                    mclow.lists at gmail.com, nicolasweber at gmx.de
    Classification: Unclassified

Steps to reproduce on a Mac:

  $ git clone http://llvm.org/git/llvm.git
  $ git clone http://llvm.org/git/clang.git llvm/tools/clang
  $ git clone http://llvm.org/git/libcxx.git llvm/projects/libcxx
  $ git clone http://llvm.org/git/libcxxabi.git llvm/projects/libcxxabi
  $ mkdir -p llvm/build
  $ cd llvm/build
  $ cmake -GNinja ..
  $ ninja clang-format

[227/227] Linking CXX executable bin/clang-format
FAILED: : && /usr/bin/c++   -fPIC -fvisibility-inlines-hidden -Wall -W
-Wno-unused-parameter -Wwrite-strings -Wcast-qual -Wmissing-field-initializers
-pedantic -Wno-long-long -Wcovered-switch-default -Wnon-virtual-dtor -std=c++11
-fcolor-diagnostics -fno-common -Woverloaded-virtual -fno-strict-aliasing
-Wno-nested-anon-types -Wl,-search_paths_first -Wl,-headerpad_max_install_names
-Wl,-dead_strip
tools/clang/tools/clang-format/CMakeFiles/clang-format.dir/ClangFormat.cpp.o 
-o bin/clang-format  lib/libLLVMSupport.a lib/libclangBasic.a
lib/libclangFormat.a lib/libclangRewrite.a lib/libclangToolingCore.a -lcurses
-lpthread -lz -lm -Wl,-rpath, at executable_path/../lib && :
Undefined symbols for architecture x86_64:
  "clang::Token::isObjCAtKeyword(clang::tok::ObjCKeywordKind) const",
referenced from:
      clang::format::FormatToken::isObjCAtKeyword(clang::tok::ObjCKeywordKind)
const in libclangFormat.a(TokenAnnotator.cpp.o)
      clang::format::UnwrappedLineParser::parseTryCatch() in
libclangFormat.a(UnwrappedLineParser.cpp.o)
      clang::format::UnwrappedLineParser::parseObjCUntilAtEnd() in
libclangFormat.a(UnwrappedLineParser.cpp.o)
  "clang::Lexer::MeasureTokenLength(clang::SourceLocation, clang::SourceManager
const&, clang::LangOptions const&)", referenced from:
      clang::tooling::getRangeSize(clang::SourceManager const&,
clang::CharSourceRange const&, clang::LangOptions const&) in
libclangToolingCore.a(Replacement.cpp.o)
  "clang::Lexer::Lex(clang::Token&)", referenced from:
      clang::Lexer::LexFromRawLexer(clang::Token&) in
libclangFormat.a(Format.cpp.o)
  "clang::Lexer::Lexer(clang::FileID, llvm::MemoryBuffer const*,
clang::SourceManager const&, clang::LangOptions const&)", referenced from:
      clang::format::(anonymous
namespace)::FormatTokenLexer::FormatTokenLexer(clang::SourceManager&,
clang::FileID, clang::format::FormatStyle&, clang::format::encoding::Encoding)
in libclangFormat.a(Format.cpp.o)
  "clang::Token::getObjCKeywordID() const", referenced from:
     
clang::format::TokenAnnotator::canBreakBefore(clang::format::AnnotatedLine
const&, clang::format::FormatToken const&) in
libclangFormat.a(TokenAnnotator.cpp.o)
     
clang::format::TokenAnnotator::spaceRequiredBetween(clang::format::AnnotatedLine
const&, clang::format::FormatToken const&, clang::format::FormatToken const&)
in libclangFormat.a(TokenAnnotator.cpp.o)
      clang::format::(anonymous
namespace)::AnnotatingParser::determineTokenType(clang::format::FormatToken&)
in libclangFormat.a(TokenAnnotator.cpp.o)
      clang::format::UnwrappedLineParser::parseStructuralElement() in
libclangFormat.a(UnwrappedLineParser.cpp.o)
  "clang::Lexer::Lexer(clang::SourceLocation, clang::LangOptions const&, char
const*, char const*, char const*)", referenced from:
      clang::format::(anonymous
namespace)::FormatTokenLexer::resetLexer(unsigned int) in
libclangFormat.a(Format.cpp.o)
ld: symbol(s) not found for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)
ninja: build stopped: subcommand failed.


Reverting r243503 makes the error go away.

-- 
You are receiving this mail because:
You are on the CC list for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-bugs/attachments/20150729/1b8cb823/attachment.html>


More information about the llvm-bugs mailing list