[llvm-bugs] [Bug 26157] New: Problem Compiling file://tools/clang/lib/StaticAnalyzer/Core/clangStaticAnalyzerCore/DynamicTypeMap.cpp
via llvm-bugs
llvm-bugs at lists.llvm.org
Fri Jan 15 04:44:03 PST 2016
https://llvm.org/bugs/show_bug.cgi?id=26157
Bug ID: 26157
Summary: Problem Compiling
file://tools/clang/lib/StaticAnalyzer/Core/clangStatic
AnalyzerCore/DynamicTypeMap.cpp
Product: Build scripts
Version: 3.8
Hardware: PC
OS: Linux
Status: NEW
Severity: normal
Priority: P
Component: cmake
Assignee: unassignedbugs at nondot.org
Reporter: laurent.delobel at etudiant.univ-bpclermont.fr
CC: llvm-bugs at lists.llvm.org
Classification: Unclassified
I'm trying to compile clang, with the following configuration:
- clang-3.8, trunk revision 257608
- compiled with gcc-4.8.1
- OS is 12.04LTS_32bits
- cmake version: cmake version 3.3.2
- svn version :svn, version 1.9.3 (r1718519)
While the same repository compiles fine under 14.04LTS_64bits-gcc-4.8.3, the
compile process blocks with file clang/lib/StaticAnalyzer/DynamicTypeMap.cpp.
I cant explain why this error doesn't show up under 14.04_64bits, but shows
under 12.04_32bits.
========== ERROR REPORT ==========
[ 69%] Building CXX object
tools/clang/lib/StaticAnalyzer/Core/CMakeFiles/clangStaticAnalyzerCore.dir/DynamicTypeMap.cpp.o
In file included from /llvm/tools/clang/lib/CodeGen/CGBuilder.h:14:0,
from /llvm/tools/clang/lib/CodeGen/CodeGenFunction.h:17,
from /llvm/tools/clang/lib/CodeGen/CoverageMappingGen.cpp:15:
/llvm/tools/clang/lib/CodeGen/Address.h:111:31: error: cannot allocate an
object of abstract type ‘llvm::object::ObjectFile’
template <class U> inline U cast(clang::CodeGen::Address addr) {
^
In file included from /llvm/ProfileData/CoverageMappingReader.h:21:0,
from /llvm/tools/clang/lib/CodeGen/CoverageMappingGen.cpp:20:
/llvm/Object/ObjectFile.h:175:7: note: because the following virtual
functions are pure within ‘llvm::object::ObjectFile’:
class ObjectFile : public SymbolicFile {
^
In file included from /llvm/Object/ObjectFile.h:18:0,
from /llvm/ProfileData/CoverageMappingReader.h:21,
from /llvm/tools/clang/lib/CodeGen/CoverageMappingGen.cpp:20:
/llvm/Object/SymbolicFile.h:132:16: note: virtual void
llvm::object::SymbolicFile::moveSymbolNext(llvm::object::DataRefImpl&) const
virtual void moveSymbolNext(DataRefImpl &Symb) const = 0;
^
/llvm/Object/SymbolicFile.h:137:20: note: virtual uint32_t
llvm::object::SymbolicFile::getSymbolFlags(llvm::object::DataRefImpl) const
virtual uint32_t getSymbolFlags(DataRefImpl Symb) const = 0;
^
/llvm/Object/SymbolicFile.h:139:33: note: virtual
llvm::object::basic_symbol_iterator
llvm::object::SymbolicFile::symbol_begin_impl() const
virtual basic_symbol_iterator symbol_begin_impl() const = 0;
^
/llvm/Object/SymbolicFile.h:141:33: note: virtual
llvm::object::basic_symbol_iterator
llvm::object::SymbolicFile::symbol_end_impl() const
virtual basic_symbol_iterator symbol_end_impl() const = 0;
^
In file included from /llvm/ProfileData/CoverageMappingReader.h:21:0,
from /llvm/tools/clang/lib/CodeGen/CoverageMappingGen.cpp:20:
/llvm/Object/ObjectFile.h:196:30: note: virtual
llvm::ErrorOr<llvm::StringRef>
llvm::object::ObjectFile::getSymbolName(llvm::object::DataRefImpl) const
virtual ErrorOr<StringRef> getSymbolName(DataRefImpl Symb) const = 0;
^
/llvm/Object/ObjectFile.h:199:29: note: virtual llvm::ErrorOr<long long
unsigned int>
llvm::object::ObjectFile::getSymbolAddress(llvm::object::DataRefImpl) const
virtual ErrorOr<uint64_t> getSymbolAddress(DataRefImpl Symb) const = 0;
^
/llvm/Object/ObjectFile.h:200:20: note: virtual uint64_t
llvm::object::ObjectFile::getSymbolValueImpl(llvm::object::DataRefImpl) const
virtual uint64_t getSymbolValueImpl(DataRefImpl Symb) const = 0;
^
/llvm/Object/ObjectFile.h:202:20: note: virtual uint64_t
llvm::object::ObjectFile::getCommonSymbolSizeImpl(llvm::object::DataRefImpl)
const
virtual uint64_t getCommonSymbolSizeImpl(DataRefImpl Symb) const = 0;
^
/llvm/Object/ObjectFile.h:203:27: note: virtual
llvm::object::SymbolRef::Type
llvm::object::ObjectFile::getSymbolType(llvm::object::DataRefImpl) const
virtual SymbolRef::Type getSymbolType(DataRefImpl Symb) const = 0;
^
/llvm/Object/ObjectFile.h:205:3: note: virtual
llvm::ErrorOr<llvm::object::content_iterator<llvm::object::SectionRef> >
llvm::object::ObjectFile::getSymbolSection(llvm::object::DataRefImpl) const
getSymbolSection(DataRefImpl Symb) const = 0;
^
/llvm/Object/ObjectFile.h:209:16: note: virtual void
llvm::object::ObjectFile::moveSectionNext(llvm::object::DataRefImpl&) const
virtual void moveSectionNext(DataRefImpl &Sec) const = 0;
^
/llvm/Object/ObjectFile.h:210:27: note: virtual std::error_code
llvm::object::ObjectFile::getSectionName(llvm::object::DataRefImpl,
llvm::StringRef&) const
virtual std::error_code getSectionName(DataRefImpl Sec,
^
/llvm/Object/ObjectFile.h:212:20: note: virtual uint64_t
llvm::object::ObjectFile::getSectionAddress(llvm::object::DataRefImpl) const
virtual uint64_t getSectionAddress(DataRefImpl Sec) const = 0;
^
/llvm/Object/ObjectFile.h:213:20: note: virtual uint64_t
llvm::object::ObjectFile::getSectionSize(llvm::object::DataRefImpl) const
virtual uint64_t getSectionSize(DataRefImpl Sec) const = 0;
^
/llvm/Object/ObjectFile.h:214:27: note: virtual std::error_code
llvm::object::ObjectFile::getSectionContents(llvm::object::DataRefImpl,
llvm::StringRef&) const
virtual std::error_code getSectionContents(DataRefImpl Sec,
^
/llvm/Object/ObjectFile.h:216:20: note: virtual uint64_t
llvm::object::ObjectFile::getSectionAlignment(llvm::object::DataRefImpl) const
virtual uint64_t getSectionAlignment(DataRefImpl Sec) const = 0;
^
/llvm/Object/ObjectFile.h:217:16: note: virtual bool
llvm::object::ObjectFile::isSectionText(llvm::object::DataRefImpl) const
virtual bool isSectionText(DataRefImpl Sec) const = 0;
^
/llvm/Object/ObjectFile.h:218:16: note: virtual bool
llvm::object::ObjectFile::isSectionData(llvm::object::DataRefImpl) const
virtual bool isSectionData(DataRefImpl Sec) const = 0;
^
/llvm/Object/ObjectFile.h:219:16: note: virtual bool
llvm::object::ObjectFile::isSectionBSS(llvm::object::DataRefImpl) const
virtual bool isSectionBSS(DataRefImpl Sec) const = 0;
^
/llvm/Object/ObjectFile.h:221:16: note: virtual bool
llvm::object::ObjectFile::isSectionVirtual(llvm::object::DataRefImpl) const
virtual bool isSectionVirtual(DataRefImpl Sec) const = 0;
^
/llvm/Object/ObjectFile.h:222:31: note: virtual
llvm::object::relocation_iterator
llvm::object::ObjectFile::section_rel_begin(llvm::object::DataRefImpl) const
virtual relocation_iterator section_rel_begin(DataRefImpl Sec) const = 0;
^
/llvm/Object/ObjectFile.h:223:31: note: virtual
llvm::object::relocation_iterator
llvm::object::ObjectFile::section_rel_end(llvm::object::DataRefImpl) const
virtual relocation_iterator section_rel_end(DataRefImpl Sec) const = 0;
^
/llvm/Object/ObjectFile.h:228:16: note: virtual void
llvm::object::ObjectFile::moveRelocationNext(llvm::object::DataRefImpl&) const
virtual void moveRelocationNext(DataRefImpl &Rel) const = 0;
^
/llvm/Object/ObjectFile.h:229:20: note: virtual uint64_t
llvm::object::ObjectFile::getRelocationOffset(llvm::object::DataRefImpl) const
virtual uint64_t getRelocationOffset(DataRefImpl Rel) const = 0;
^
/llvm/Object/ObjectFile.h:230:27: note: virtual
llvm::object::symbol_iterator
llvm::object::ObjectFile::getRelocationSymbol(llvm::object::DataRefImpl) const
virtual symbol_iterator getRelocationSymbol(DataRefImpl Rel) const = 0;
^
/llvm/Object/ObjectFile.h:231:20: note: virtual uint64_t
llvm::object::ObjectFile::getRelocationType(llvm::object::DataRefImpl) const
virtual uint64_t getRelocationType(DataRefImpl Rel) const = 0;
^
/llvm/Object/ObjectFile.h:232:16: note: virtual void
llvm::object::ObjectFile::getRelocationTypeName(llvm::object::DataRefImpl,
llvm::SmallVectorImpl<char>&) const
virtual void getRelocationTypeName(DataRefImpl Rel,
^
/llvm/Object/ObjectFile.h:248:28: note: virtual
llvm::object::section_iterator llvm::object::ObjectFile::section_begin() const
virtual section_iterator section_begin() const = 0;
^
/llvm/Object/ObjectFile.h:249:28: note: virtual
llvm::object::section_iterator llvm::object::ObjectFile::section_end() const
virtual section_iterator section_end() const = 0;
^
/llvm/Object/ObjectFile.h:258:19: note: virtual uint8_t
llvm::object::ObjectFile::getBytesInAddress() const
virtual uint8_t getBytesInAddress() const = 0;
^
/llvm/Object/ObjectFile.h:260:21: note: virtual llvm::StringRef
llvm::object::ObjectFile::getFileFormatName() const
virtual StringRef getFileFormatName() const = 0;
^
/llvm/Object/ObjectFile.h:261:43: note: virtual unsigned int
llvm::object::ObjectFile::getArch() const
virtual /* Triple::ArchType */ unsigned getArch() const = 0;
^
/llvm/Object/ObjectFile.h:270:16: note: virtual bool
llvm::object::ObjectFile::isRelocatableObject() const
virtual bool isRelocatableObject() const = 0;
^
========== END OF ERROR ==========
--
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/20160115/3ea3aac8/attachment-0001.html>
More information about the llvm-bugs
mailing list