Skip to content

Compilation with latest (3.6svn) LLVM fails #16660

Closed
@jauhien

Description

@jauhien

Relevant piece of log:

compile: x86_64-unknown-linux-gnu/rustllvm/RustWrapper.o
/home/jauhien/work/rust/working_copy/rust/src/rustllvm/RustWrapper.cpp: In function ‘void* LLVMRustOpenArchive(char*)’:
/home/jauhien/work/rust/working_copy/rust/src/rustllvm/RustWrapper.cpp:718:60: error: no matching function for call to ‘llvm::object::Archive::Archive(std::remove_reference<std::unique_ptr<llvm::MemoryBuffer>&>::type, std::error_code&)’
     Archive *ret = new Archive(std::move(buf_or.get()), err);
                                                            ^
/home/jauhien/work/rust/working_copy/rust/src/rustllvm/RustWrapper.cpp:718:60: note: candidate is:
In file included from /home/jauhien/work/rust/working_copy/rust/src/rustllvm/RustWrapper.cpp:12:0:
/usr/include/llvm/Object/Archive.h:166:3: note: llvm::object::Archive::Archive(llvm::MemoryBufferRef, std::error_code&)
   Archive(MemoryBufferRef Source, std::error_code &EC);
   ^
/usr/include/llvm/Object/Archive.h:166:3: note:   no known conversion for argument 1 from ‘std::remove_reference<std::unique_ptr<llvm::MemoryBuffer>&>::type {aka std::unique_ptr<llvm::MemoryBuffer>}’ to ‘llvm::MemoryBufferRef’
make: *** [x86_64-unknown-linux-gnu/rustllvm/RustWrapper.o] Error 1

It seems like interface of LLVM has been changed.

Metadata

Metadata

Assignees

No one assigned

    Labels

    A-LLVMArea: Code generation parts specific to LLVM. Both correctness bugs and optimization-related issues.

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions