https://gcc.gnu.org/bugzilla/show_bug.cgi?id=89194
Jonathan Wakely <redi at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |ASSIGNED Assignee|unassigned at gcc dot gnu.org |redi at gcc dot gnu.org --- Comment #4 from Jonathan Wakely <redi at gcc dot gnu.org> --- Doesn't matter, I reproduced it and know what the problem is, but I think the first one is supposed to be using -std=c++2a and gcc9_stdcpp17.ii i.e. compiling the C++17 code in C++2a mode. That works, because the is_nothrow_convertible code is only in the preprocessed output if it was preprocessed as C++2a.