Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 787104 - x11-terms/rxvt-unicode-9.22-r8 - ./.../ev++.h: error: ISO C++17 does not allow dynamic exception specifications (maybe gcc-11 related)
Summary: x11-terms/rxvt-unicode-9.22-r8 - ./.../ev++.h: error: ISO C++17 does not allo...
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: Normal normal (vote)
Assignee: Marek Szuba
URL:
Whiteboard:
Keywords:
Depends on:
Blocks: gcc-11
  Show dependency tree
 
Reported: 2021-04-30 13:14 UTC by Toralf Förster
Modified: 2021-05-10 13:36 UTC (History)
3 users (show)

See Also:
Package list:
Runtime testing required: ---


Attachments
emerge-info.txt (emerge-info.txt,15.71 KB, text/plain)
2021-04-30 13:14 UTC, Toralf Förster
Details
emerge-history.txt (emerge-history.txt,98.28 KB, text/plain)
2021-04-30 13:14 UTC, Toralf Förster
Details
environment (environment,88.76 KB, text/plain)
2021-04-30 13:14 UTC, Toralf Förster
Details
etc.portage.tar.bz2 (etc.portage.tar.bz2,18.74 KB, application/x-bzip)
2021-04-30 13:14 UTC, Toralf Förster
Details
logs.tar.bz2 (logs.tar.bz2,10.73 KB, application/x-bzip)
2021-04-30 13:14 UTC, Toralf Förster
Details
temp.tar.bz2 (temp.tar.bz2,23.96 KB, application/x-bzip)
2021-04-30 13:14 UTC, Toralf Förster
Details
x11-terms:rxvt-unicode-9.22-r8:20210429-201305.log (x11-terms:rxvt-unicode-9.22-r8:20210429-201305.log,11.13 KB, text/plain)
2021-04-30 13:14 UTC, Toralf Förster
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Toralf Förster gentoo-dev 2021-04-30 13:14:42 UTC
                 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"
Comment 1 Toralf Förster gentoo-dev 2021-04-30 13:14:43 UTC
Created attachment 704232 [details]
emerge-info.txt
Comment 2 Toralf Förster gentoo-dev 2021-04-30 13:14:45 UTC
Created attachment 704235 [details]
emerge-history.txt
Comment 3 Toralf Förster gentoo-dev 2021-04-30 13:14:46 UTC
Created attachment 704238 [details]
environment
Comment 4 Toralf Förster gentoo-dev 2021-04-30 13:14:47 UTC
Created attachment 704241 [details]
etc.portage.tar.bz2
Comment 5 Toralf Förster gentoo-dev 2021-04-30 13:14:48 UTC
Created attachment 704244 [details]
logs.tar.bz2
Comment 6 Toralf Förster gentoo-dev 2021-04-30 13:14:50 UTC
Created attachment 704247 [details]
temp.tar.bz2
Comment 7 Toralf Förster gentoo-dev 2021-04-30 13:14:51 UTC
Created attachment 704250 [details]
x11-terms:rxvt-unicode-9.22-r8:20210429-201305.log
Comment 8 Antonio Quartulli 2021-05-03 12:18:55 UTC
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.
Comment 9 Johann 2021-05-10 09:40:33 UTC
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
Comment 10 Larry the Git Cow gentoo-dev 2021-05-10 13:36:07 UTC
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(-)