https://gcc.gnu.org/bugzilla/show_bug.cgi?id=90959
--- Comment #1 from Richard Biener <rguenth at gcc dot gnu.org> --- IIRC Jason added the constructor because the C++ FE does this. I think assignment is bad style so just delete that (or declare and not define for old C++ - IIRC we do have = deleted macros in system.h or ansidecl.h?)