diff options
| author | Matt Ickstadt <mattico8@gmail.com> | 2017-02-11 15:01:25 -0600 |
|---|---|---|
| committer | Matt Ickstadt <mattico8@gmail.com> | 2017-02-11 15:15:28 -0600 |
| commit | 68fff6254286bcee426fd9020c54f8f30b64758e (patch) | |
| tree | 85c629ed980f979fddf11e2acf2051a8452f251a /src/rustllvm/RustWrapper.cpp | |
| parent | 064a0ee131b3129fcad68570975ccc85d0fb54d0 (diff) | |
| download | rust-68fff6254286bcee426fd9020c54f8f30b64758e.tar.gz rust-68fff6254286bcee426fd9020c54f8f30b64758e.zip | |
[LLVM 4.0] Fix CreateCompileUnit
Diffstat (limited to 'src/rustllvm/RustWrapper.cpp')
| -rw-r--r-- | src/rustllvm/RustWrapper.cpp | 14 |
1 files changed, 11 insertions, 3 deletions
diff --git a/src/rustllvm/RustWrapper.cpp b/src/rustllvm/RustWrapper.cpp index 27233a8b075..40432735911 100644 --- a/src/rustllvm/RustWrapper.cpp +++ b/src/rustllvm/RustWrapper.cpp @@ -474,11 +474,19 @@ extern "C" void LLVMRustDIBuilderFinalize(LLVMRustDIBuilderRef Builder) { } extern "C" LLVMRustMetadataRef LLVMRustDIBuilderCreateCompileUnit( - LLVMRustDIBuilderRef Builder, unsigned Lang, const char *File, - const char *Dir, const char *Producer, bool isOptimized, const char *Flags, + LLVMRustDIBuilderRef Builder, unsigned Lang, LLVMRustMetadataRef FileRef, + const char *Producer, bool isOptimized, const char *Flags, unsigned RuntimeVer, const char *SplitName) { - return wrap(Builder->createCompileUnit(Lang, File, Dir, Producer, isOptimized, + auto *File = unwrapDI<DIFile>(FileRef); + +#if LLVM_VERSION_GE(4, 0) + return wrap(Builder->createCompileUnit(Lang, File, Producer, isOptimized, Flags, RuntimeVer, SplitName)); +#else + return wrap(Builder->createCompileUnit(Lang, File->getFilename(), + File->getDirectory(), Producer, isOptimized, + Flags, RuntimeVer, SplitName)); +#endif } extern "C" LLVMRustMetadataRef |
