advancecomp fails to build with GCC 11
Brought to you by:
amadvance
Advancecomp does not build properly with newer GCC that default to C++17. I get a lot of errors of the follow form (repeated across multiple files as files.h is included in many places).
In file included from pngex.h:26,
from mngex.h:24,
from mngex.cc:23:
file.h:70:43: error: ISO C++17 does not allow dynamic exception specifications
70 | bool file_exists(const std::string& file) throw (error);
| ^~~~~
file.h:71:75: error: ISO C++17 does not allow dynamic exception specifications
71 | void file_write(const std::string& path, const char* data, unsigned size) throw (error);
| ^~~~~
file.h:72:68: error: ISO C++17 does not allow dynamic exception specifications
72 | void file_read(const std::string& path, char* data, unsigned size) throw (error);
| ^~~~~
file.h:73:85: error: ISO C++17 does not allow dynamic exception specifications
73 | void file_read(const std::string& path, char* data, unsigned offset, unsigned size) throw (error);
| ^~~~~
file.h:74:43: error: ISO C++17 does not allow dynamic exception specifications
74 | time_t file_time(const std::string& path) throw (error);
| ^~~~~
file.h:75:54: error: ISO C++17 does not allow dynamic exception specifications
75 | void file_utime(const std::string& path, time_t tod) throw (error);
| ^~~~~
file.h:76:45: error: ISO C++17 does not allow dynamic exception specifications
76 | unsigned file_size(const std::string& path) throw (error);
| ^~~~~
file.h:77:41: error: ISO C++17 does not allow dynamic exception specifications
77 | crc_t file_crc(const std::string& path) throw (error);
| ^~~~~
file.h:78:68: error: ISO C++17 does not allow dynamic exception specifications
78 | void file_copy(const std::string& path1, const std::string& path2) throw (error);
| ^~~~~
file.h:79:68: error: ISO C++17 does not allow dynamic exception specifications
79 | void file_move(const std::string& path1, const std::string& path2) throw (error);
| ^~~~~
file.h:80:44: error: ISO C++17 does not allow dynamic exception specifications
80 | void file_remove(const std::string& path1) throw (error);
| ^~~~~
file.h:81:44: error: ISO C++17 does not allow dynamic exception specifications
81 | void file_mktree(const std::string& path1) throw (error);
| ^~~~~
Just made a v2.3 release to fix this.
Ciao,
Andrea