https://gcc.gnu.org/bugzilla/show_bug.cgi?id=106611
Jiang An <de34 at live dot cn> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |de34 at live dot cn --- Comment #7 from Jiang An <de34 at live dot cn> --- The standard wording says "... is known not to throw any exceptions ([expr.unary.noexcept])" for is_nothrow_* traits. It's arguably that the wording is ambiguous - when the defaulted function is marked `noexcept(false)` but the implicit exception specification would be `noexcept(true)`, it may still be possible to say the operation "is known not to throw any exceptions". But the reference to [expr.unary.noexcept] seemly suggests that the results consistent with noexcept operator should be used. This may deserve an LWG issue.