Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!

Bug 678368

Summary: >=Libreoffice-6.1.5.2, under gcc 8.2 fails to compile: error: ISO C++17 does not allow dynamic exception specifications
Product: Gentoo Linux Reporter: Michele Testa <michele.testa>
Component: Current packagesAssignee: Gentoo Linux bug wranglers <bug-wranglers>
Status: RESOLVED DUPLICATE    
Severity: normal    
Priority: Normal    
Version: unspecified   
Hardware: All   
OS: Linux   
Whiteboard:
Package list:
Runtime testing required: ---
Attachments: Emerge info

Description Michele Testa 2019-02-19 14:51:06 UTC
Created attachment 565864 [details]
Emerge info

Libreoffice (>= 6.1.5.2) fails to compile with error:

  ISO C++17 does not allow dynamic exception specifications 

when using gcc 8.2 (that enables -std=gnu++17) due to http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2016/p0003r5.html


> As workaround, I've simply set -std=c++14 in CHOSTS, CPPHOSTS, CXXHOSTS

Error happens during mysql client connector compiling:

[CXX] mysqlc/source/mysqlc_databasemetadata.cxx
In file included from /usr/include/cppconn/variant.h:38,
                 from /usr/include/cppconn/connection.h:35,
                 from /usr/include/cppconn/driver.h:30,
                 from /var/notmp/portage/app-office/libreoffice-6.1.5.2/work/libreoffice-6.1.5.2/mysqlc/source/mysqlc_connection.hxx:39,
                 from /var/notmp/portage/app-office/libreoffice-6.1.5.2/work/libreoffice-6.1.5.2/mysqlc/source/mysqlc_statement.cxx:25:
/usr/include/cppconn/exception.h:98:2: error: ISO C++17 does not allow dynamic exception specifications
  MEMORY_ALLOC_OPERATORS(SQLException)
  ^~~~~~~~~~~~~~~~~~~~~~
/usr/include/cppconn/exception.h:98:2: error: ISO C++17 does not allow dynamic exception specifications
  MEMORY_ALLOC_OPERATORS(SQLException)
  ^~~~~~~~~~~~~~~~~~~~~~
make[1]: *** [/var/notmp/portage/app-office/libreoffice-6.1.5.2/work/libreoffice-6.1.5.2/solenv/gbuild/LinkTarget.mk:293: /var/notmp/portage/app-office/libreoffice-6.1.5.2/work/libreoffice-6.1.5.2/workdir/CxxObject/mysqlc/source/mysqlc_statement.o] Error 1

As workaround, I've simply set -std=c++14 in CHOSTS, CPPHOSTS, CXXHOSTS
Comment 1 Michele Testa 2019-02-19 14:54:52 UTC
I'm still sleeping... :(

> As workaround, I've simply set -std=c++14 in CFLAGS, CPPFLAGS, CXXFLAGS
Comment 2 Andreas Sturmlechner gentoo-dev 2019-02-19 14:57:10 UTC
As a workaround, search in bugzilla for existing bugs. ;)

*** This bug has been marked as a duplicate of bug 674450 ***
Comment 3 Michele Testa 2019-02-19 16:57:07 UTC
(In reply to Andreas Sturmlechner from comment #2)
> As a workaround, search in bugzilla for existing bugs. ;)
> 
> *** This bug has been marked as a duplicate of bug 674450 ***

Ooops, sorry for spamming, I must improve my search skills :-/