https://gcc.gnu.org/bugzilla/show_bug.cgi?id=100409
Harald van Dijk <harald at gigawatt dot nl> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |harald at gigawatt dot nl --- Comment #4 from Harald van Dijk <harald at gigawatt dot nl> --- The documentation for the pure attribute refers to "functions that have no observable effects on the state of the program other than to return a value" which implies not throwing exceptions, the Wsuggest-attribute=pure text says that pure functions have to return normally, and the presence of throw statements suppresses the compiler's suggestion to mark functions as pure. This function throws, so should the fact that it is marked pure not simply make the whole thing undefined?