https://gcc.gnu.org/bugzilla/show_bug.cgi?id=109675
Bug ID: 109675 Summary: GCC 13.1: the Modula-2 front-end fails to build on some platforms Product: gcc Version: 13.1.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: modula2 Assignee: gaius at gcc dot gnu.org Reporter: gr.audio at gmail dot com Target Milestone: --- Happens on any platform on which the 'long unsigned int' type can't hold a pointer (for instance: Windows/mingw64). The culprit is this: ../../gcc-13.1.0/gcc/m2/mc-boot/GDynamicStrings.cc: In function 'void writeAddress(void*)': ../../gcc-13.1.0/gcc/m2/mc-boot/GDynamicStrings.cc:909:18: error: cast from 'void*' to 'long unsigned int' loses precision [-fpermissive] 909 | writeLongcard ((long unsigned int ) (a)); | ^~~~~~~~~~~~~~~~~~~~~~~~ Casting a pointer to a 'long unsigned int' is not exactly portable.