Summary: | x11-terms/rxvt-unicode-9.22-r8 - ./.../ev++.h: error: ISO C++17 does not allow dynamic exception specifications (maybe gcc-11 related) | ||
---|---|---|---|
Product: | Gentoo Linux | Reporter: | Toralf Förster <toralf> |
Component: | Current packages | Assignee: | Marek Szuba <marecki> |
Status: | RESOLVED FIXED | ||
Severity: | normal | CC: | a, carlphilippreh, gentoo |
Priority: | Normal | ||
Version: | unspecified | ||
Hardware: | All | ||
OS: | Linux | ||
Whiteboard: | |||
Package list: | Runtime testing required: | --- | |
Bug Depends on: | |||
Bug Blocks: | 732706 | ||
Attachments: |
emerge-info.txt
emerge-history.txt environment etc.portage.tar.bz2 logs.tar.bz2 temp.tar.bz2 x11-terms:rxvt-unicode-9.22-r8:20210429-201305.log |
Description
Toralf Förster
2021-04-30 13:14:42 UTC
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(-) |