lfranchi / libechonest

A C++/Qt wrapper around the wonderful echo nest api
Other
10 stars 5 forks source link

Fails to build with Qt4: `error: ISO C++17 does not allow dynamic exception specifications` #29

Open barracuda156 opened 2 months ago

barracuda156 commented 2 months ago

Fails with Qt4:

In file included from /opt/local/var/macports/build/_opt_PPCSnowLeopardPorts_audio_libechonest/libechonest/work/libechonest-2.3.1/src/Track.h:21,
                 from /opt/local/var/macports/build/_opt_PPCSnowLeopardPorts_audio_libechonest/libechonest/work/libechonest-2.3.1/src/Song.h:22,
                 from /opt/local/var/macports/build/_opt_PPCSnowLeopardPorts_audio_libechonest/libechonest/work/libechonest-2.3.1/src/Artist.h:26,
                 from /opt/local/var/macports/build/_opt_PPCSnowLeopardPorts_audio_libechonest/libechonest/work/libechonest-2.3.1/src/Artist.cpp:17:
/opt/local/var/macports/build/_opt_PPCSnowLeopardPorts_audio_libechonest/libechonest/work/libechonest-2.3.1/src/AudioSummary.h:139:56: error: ISO C++17 does not allow dynamic exception specifications
  139 |         void parseFullAnalysis( QNetworkReply* reply ) throw( ParseError );
      |                                                        ^~~~~
/opt/local/var/macports/build/_opt_PPCSnowLeopardPorts_audio_libechonest/libechonest/work/libechonest-2.3.1/src/Track.h:216:47: error: ISO C++17 does not allow dynamic exception specifications
  216 |   static Track parseProfile( QNetworkReply* ) throw( ParseError );
      |                                               ^~~~~
/opt/local/var/macports/build/_opt_PPCSnowLeopardPorts_audio_libechonest/libechonest/work/libechonest-2.3.1/src/Song.h:229:58: error: ISO C++17 does not allow dynamic exception specifications
  229 |   static QVector< Song > parseIdentify( QNetworkReply* ) throw( ParseError );
      |                                                          ^~~~~
/opt/local/var/macports/build/_opt_PPCSnowLeopardPorts_audio_libechonest/libechonest/work/libechonest-2.3.1/src/Song.h:236:49: error: ISO C++17 does not allow dynamic exception specifications
  236 |   void parseInformation( QNetworkReply* reply ) throw( ParseError );
      |                                                 ^~~~~
/opt/local/var/macports/build/_opt_PPCSnowLeopardPorts_audio_libechonest/libechonest/work/libechonest-2.3.1/src/Song.h:241:60: error: ISO C++17 does not allow dynamic exception specifications
  241 |   static QVector<Song> parseSearch( QNetworkReply* reply ) throw( ParseError );
      |                                                            ^~~~~
/opt/local/var/macports/build/_opt_PPCSnowLeopardPorts_audio_libechonest/libechonest/work/libechonest-2.3.1/src/Artist.h:303:44: error: ISO C++17 does not allow dynamic exception specifications
  303 |         int parseProfile( QNetworkReply* ) throw( ParseError );
      |                                            ^~~~~
/opt/local/var/macports/build/_opt_PPCSnowLeopardPorts_audio_libechonest/libechonest/work/libechonest-2.3.1/src/Artist.h:371:55: error: ISO C++17 does not allow dynamic exception specifications
  371 |         static Artists parseSimilar( QNetworkReply* ) throw( ParseError );
      |                                                       ^~~~~
/opt/local/var/macports/build/_opt_PPCSnowLeopardPorts_audio_libechonest/libechonest/work/libechonest-2.3.1/src/Artist.h:376:54: error: ISO C++17 does not allow dynamic exception specifications
  376 |         static Artists parseSearch( QNetworkReply* ) throw( ParseError );
      |                                                      ^~~~~
/opt/local/var/macports/build/_opt_PPCSnowLeopardPorts_audio_libechonest/libechonest/work/libechonest-2.3.1/src/Artist.h:381:56: error: ISO C++17 does not allow dynamic exception specifications
  381 |         static Artists parseTopHottt( QNetworkReply* ) throw( ParseError );
      |                                                        ^~~~~
/opt/local/var/macports/build/_opt_PPCSnowLeopardPorts_audio_libechonest/libechonest/work/libechonest-2.3.1/src/Artist.h:386:57: error: ISO C++17 does not allow dynamic exception specifications
  386 |         static TermList parseTopTerms( QNetworkReply* ) throw( ParseError );
      |                                                         ^~~~~
. . .
barracuda156 commented 2 months ago

Unrelated to Qt version, it just needs -std=c++14 to be passed explicitly.