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.

Reply via email to