from rxvt.h:100, from rxvt.C:24: ./../libev/ev++.h:379:46: error: ISO C++17 does not allow dynamic exception specifications 379 | default_loop (unsigned int flags = AUTO) throw (bad_loop) | ^~~~~ make[1]: *** [Makefile:60: rxvt.o] Error 1 make[1]: Leaving directory '/var/tmp/portage/x11-terms/rxvt-unicode-9.22-r8/work/rxvt-unicode-9.22/src' ------------------------------------------------------------------- This is an unstable amd64 chroot image at a tinderbox (==build bot) name: 17.1_no-multilib_hardened-20210427-181545 ------------------------------------------------------------------- gcc-config -l: [1] x86_64-pc-linux-gnu-11.1.0 * clang version 12.0.0 Target: x86_64-pc-linux-gnu Thread model: posix InstalledDir: /usr/lib/llvm/12/bin /usr/lib/llvm/12 12.0.0 Python 3.8.9 Available Ruby profiles: [1] ruby26 (with Rubygems) [2] ruby30 (with Rubygems) * Available Rust versions: [1] rust-bin-1.51.0 [2] rust-1.51.0 * The following VMs are available for generation-2: *) AdoptOpenJDK 8.292_p10 [openjdk-bin-8] Available Java Virtual Machines: [1] openjdk-bin-8 system-vm The Glorious Glasgow Haskell Compilation System, version 8.10.4 timestamp(s) of HEAD at this tinderbox image: /var/db/repos/gentoo Thu Apr 29 19:50:14 UTC 2021 emerge -qpvO x11-terms/rxvt-unicode [ebuild N ] x11-terms/rxvt-unicode-9.22-r8 USE="font-styles mousewheel perl utmp wtmp -24-bit-color -256-color -blink -fading-colors -gdk-pixbuf -iso14755 -sgrmouse -startup-notification -unicode3 -xft"
Created attachment 704232 [details] emerge-info.txt
Created attachment 704235 [details] emerge-history.txt
Created attachment 704238 [details] environment
Created attachment 704241 [details] etc.portage.tar.bz2
Created attachment 704244 [details] logs.tar.bz2
Created attachment 704247 [details] temp.tar.bz2
Created attachment 704250 [details] x11-terms:rxvt-unicode-9.22-r8:20210429-201305.log
I wanted to report that the version in their CVS repo compiles just fine. Unfortunately I am not familiar with CVS and I Cannot highlight which patch is fixing this issue. I presume this single change could be backported.
This is because gcc 11 changing defaults to c++17 (gcc10 is c++14). So according to [1], throw(typeid, typeid, ...) is deprecated in c++11, and **removed** in c++17. See compiler explorer[2] for error messages. [1] https://en.cppreference.com/w/cpp/language/except_spec [2] https://godbolt.org/z/KzfGq9es1
The bug has been closed via the following commit(s): https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=2a02593d5d00bf736d0f1bc40677cdc6f77487fb commit 2a02593d5d00bf736d0f1bc40677cdc6f77487fb Author: Marek Szuba <marecki@gentoo.org> AuthorDate: 2021-05-10 13:18:30 +0000 Commit: Marek Szuba <marecki@gentoo.org> CommitDate: 2021-05-10 13:35:56 +0000 x11-terms/rxvt-unicode-9.22-r8: append -std=c++14 to CXXFLAGS Bundled libev is not compatible with C++17 (which is the default C++ mode in gcc-11), and both unbundling and the backporting of updated libev from rxvt-unicode CVS repository have turned out to be non-trivial. Have chosen C++14 here because this is the default in gcc-10 (as well as all older GCC versions starting with 6.1) [1], and we know that in spite of much of its code base being older rxvt-unicode builds fine with gcc-10. clang shouldn't have any problems with this either, given it has supported this C++ standard since version 3.4 [2]. [1] https://gcc.gnu.org/projects/cxx-status.html [2] https://clang.llvm.org/cxx_status.html Closes: https://bugs.gentoo.org/787104 Signed-off-by: Marek Szuba <marecki@gentoo.org> x11-terms/rxvt-unicode/rxvt-unicode-9.22-r8.ebuild | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-)