/usr/lib/llvm/8/include/llvm/ADT/ArrayRef.h: In instantiation of ‘llvm::ArrayRef<T>::ArrayRef(const std::initializer_list<_Tp>&) [with T = llvm::Value*]’: /var/tmp/portage/dev-util/intel-graphics-compiler-1.0.3/work/intel-graphics-compiler-igc-1.0.3/IGC/Compiler/BlendToDiscard.cpp:312:42: required from here /usr/lib/llvm/8/include/llvm/ADT/ArrayRef.h:102:37: error: initializing ‘llvm::ArrayRef<llvm::Value*>::Data’ from ‘std::initializer_list<llvm::Value*>::begin’ does not extend the lifetime of the underlying array [-Werror=init-list-lifetime] 102 | : Data(Vec.begin() == Vec.end() ? (T*)nullptr : Vec.begin()), cc1plus: all warnings being treated as errors make[2]: *** [IGC/Compiler/CMakeFiles/Compiler.dir/build.make:141: IGC/Compiler/CMakeFiles/Compiler.dir/BlendToDiscard.cpp.o] Error 1 ------------------------------------------------------------------- This is an unstable amd64 chroot image at a tinderbox (==build bot) name: 17.1_20190510-222116 ------------------------------------------------------------------- gcc-config -l: [1] x86_64-pc-linux-gnu-9.1.0 * Available Python interpreters, in order of preference: [1] python3.6 [2] python2.7 (fallback) Available Ruby profiles: [1] ruby24 (with Rubygems) [2] ruby25 (with Rubygems) [3] ruby26 (with Rubygems) * Available Rust versions: [1] rust-1.34.1 * emerge -qpvO dev-util/intel-graphics-compiler [ebuild N ] dev-util/intel-graphics-compiler-1.0.3 ABI_X86="(64) -32 (-x32)"
Created attachment 576274 [details] emerge-info.txt
Created attachment 576276 [details] dev-util:intel-graphics-compiler-1.0.3:20190512-215801.log
Created attachment 576278 [details] emerge-history.txt
Created attachment 576280 [details] environment
Created attachment 576282 [details] etc.portage.tbz2
Created attachment 576284 [details] logs.tbz2
Created attachment 576286 [details] temp.tbz2
I'm experiencing this as well.
I take it you use gcc-9 too, Bernardo? Anyway, I'll raise this issue upstream but it looks like it will be necessary to remove -Werror from compiler flags for the time being. It would be great if you could confirm that this indeed helps.
That's correct Marek, I'm on GCC 9.1. I will try patching the CFLAGS tonight and see if it works. Will report back.
Created attachment 577614 [details, diff] Removed -Werror from CMakeLists
Applying the patch I attached previously, the package still does not build. Respective logs will follow.
Created attachment 577616 [details] Build log
Here is a paste of the file for those who do not want to download the compressed log. https://gist.github.com/de88e029440d7ed2129aa230e320fa82
That's an actual error this time, all right. What is more, this hasn't been fixed in the newly released 1.0.4. On the plus side, it would appear that IGC can be built just fine using clang-8. I am build-testing this now but assuming nothing breaks, I'll have it default to using this compiler in the foreseeable future.
I have spoken too soon, building with clang fails at link time due to unknown symbols. Which unfortunately means that for the time being the best I can do with this issue is to have IGC ebuilds explicitly reject gcc-9+. Hopefully it will be fixed upstream (maybe even by me if I find enough time... yeah, right) soon.
The bug has been referenced in the following commit(s): https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=c9eec3005686be69dc90c65568754835283046f0 commit c9eec3005686be69dc90c65568754835283046f0 Author: Marek Szuba <marecki@gentoo.org> AuthorDate: 2019-05-24 10:31:46 +0000 Commit: Marek Szuba <marecki@gentoo.org> CommitDate: 2019-05-24 10:33:20 +0000 dev-util/intel-graphics-compiler: bump to version 1.0.4 and EAPI-7 Moreover, explicitly reject the use of gcc-9+ because they are known to fail. Bug: https://bugs.gentoo.org/685790 Signed-off-by: Marek Szuba <marecki@gentoo.org> Package-Manager: Portage-2.3.62, Repoman-2.3.11 dev-util/intel-graphics-compiler/Manifest | 1 + .../intel-graphics-compiler-1.0.4.ebuild | 45 ++++++++++++++++++++++ 2 files changed, 46 insertions(+)
I have just pushed the recently released version 1.0.8 to the tree. At least on my system, it builds fine with gcc-9.1.