M2
M2 copied to clipboard
eigen compilation fails with latest llvm
If I use latest clang via llvm in homebrew, the compilation of eigen.cpp fails. This has been noted before, I'd like to fix this. It is possible that this issue already exists, but I didn't see it explicitly.
The problem appears to be possibly a mismatch of mpreal, eigen, std::complex on this latest version of clang++. However, it works on apple clang.
Maybe we could use something other than eigen? Or maybe there is a more up to date mpreal? (The one we use is simply checked in to the e directory) @antonleykin @jkyang92 @d-torrance @mahrud Have any of you looked at this problem?
See https://github.com/Macaulay2/M2/issues/2809#issuecomment-1518496194.
The workaround used on GitHub Actions is to avoid the latest version of clang.
Our copy of mpreal.h is up to date with upstream. There haven't been any changes since 3.6.9 over a year ago. (See #2520).
This is going to become a bigger issue as people upgrade to macOS 14: https://github.com/Macaulay2/homebrew-tap/issues/197
@mahrud @mikestillman I have a draft pull request that might fix this. See #2989. I presume that if we actually make the change we should change the mac builds to use the more recent llvm, but I don't know how to do this.
I think this is now fixed, but correct me if I'm mistaken.