Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Master branch fails to compile with llvm 3.6.1 #142

Open
taruti opened this issue Jun 22, 2015 · 3 comments
Open

Master branch fails to compile with llvm 3.6.1 #142

taruti opened this issue Jun 22, 2015 · 3 comments

Comments

@taruti
Copy link

taruti commented Jun 22, 2015

/usr/bin/ghc -c -fPIC -odir dist/build -Idist/build/autogen -Idist/build -Isrc -I/usr/include -optc-O2 '-optc-std=c++11' -optc-I/usr/include/llvm -optc-DNDEBUG -optc-D_GNU_SOURCE -optc-D__STDC_CONSTANT_MACROS -optc-D__STDC_FORMAT_MACROS -package-db dist/package.conf.inplace -package-id array-0.5.1.0-e29cdbe82692341ebb7ce6e2798294f9 -package-id base-4.8.0.0-1b689eb8d72c4d4cc88f445839c1f01a -package-id bytestring-0.10.6.0-0909f8f31271f3d75749190bf2ee35db -package-id containers-0.5.6.2-2114032c163425cc264e6e1169dc2f6d -package-id llvm-general-pure-3.6.0.0-be3fdde891e2df43dfc31f85af87fb61 -package-id mtl-2.2.1-469d439d6bbf91b7298a50a3c97e386a -package-id parsec-3.1.9-377c9ed3b4617d819f1af87e16ba762e -package-id setenv-0.1.1.3-d5171e3fb45072ab5c000f34d31b821d -package-id template-haskell-2.10.0.0-e895139a0ffff267d412e3d0191ce93b -package-id transformers-0.4.2.0-c1a7bb855a176fe475d7b665301cd48f -package-id transformers-compat-0.4.0.4-0ef0c82e02fc5f1fa77c665b35287eb2 -package-id utf8-string-1-aec376b96b4ef1b53c504be7686bb71c src/LLVM/General/Internal/FFI/InstructionC.cpp

In file included from src/LLVM/General/Internal/FFI/InstructionC.cpp:6:0:

/usr/include/llvm/IR/Operator.h: In function ‘unsigned int LLVM_General_GetMetadata(LLVMValueRef, unsigned int*, LLVMOpaqueValue**, unsigned int)’:

/usr/include/llvm/IR/Operator.h:169:3:
     error: ‘llvm::FastMathFlags::FastMathFlags(unsigned int)’ is private
       FastMathFlags(unsigned F) : Flags(F) { }
       ^

src/LLVM/General/Internal/FFI/InstructionC.cpp:252:33:
     error: within this context
        nodes[i] = wrap(mds[i].second);
                                     ^

src/LLVM/General/Internal/FFI/InstructionC.cpp:252:27:
     error: invalid conversion from ‘llvm::MDNode*’ to ‘unsigned int’ [-fpermissive]
        nodes[i] = wrap(mds[i].second);
                               ^

In file included from src/LLVM/General/Internal/FFI/InstructionC.cpp:6:0:


/usr/include/llvm/IR/Operator.h:169:3:
     note:   initializing argument 1 of ‘llvm::FastMathFlags::FastMathFlags(unsigned int)’
       FastMathFlags(unsigned F) : Flags(F) { }
       ^

src/LLVM/General/Internal/FFI/InstructionC.cpp:252:13:
     error: cannot convert ‘LLVMFastMathFlags’ to ‘LLVMValueRef {aka LLVMOpaqueValue*}’ in assignment
        nodes[i] = wrap(mds[i].second);
                 ^
Failed to install llvm-general-3.6.0.0
cabal: Error: some packages failed to install:
llvm-general-3.6.0.0 failed during the building phase. The exception was:
ExitFailure 1

LLVM 3.6.1., GCC 5.1.0, GHC 7.10.1.

@bscarlet
Copy link
Owner

Yep. I regret I'm behind on keeping up with llvm releases. The master branch is only up partway to 3.5.

@cocreature
Copy link

Since we now have llvm-3.8 support in the llvm-3.8 branch this can be closed if you’re fine with simply skipping 3.6 and 3.7

@bscarlet
Copy link
Owner

I'll leave it open, since we may need to backport to 3.6 and 3.7 at some point. It seems to be fairly common for one tool or another to lag the latest available LLVM version, so people using those tools may need such a backport.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants