https://gcc.gnu.org/bugzilla/show_bug.cgi?id=115330
Bug ID: 115330 Summary: Incorrect definition module name used in the error message when reporting on an opaque type Product: gcc Version: 15.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: modula2 Assignee: gaius at gcc dot gnu.org Reporter: gaius at gcc dot gnu.org Target Milestone: --- The error message reporting on an opaque type not being a pointer generates an module name in the error. For example: $ cat Num.def DEFINITION MODULE Num ; TYPE NumType ; PROCEDURE add (left, right: NumType) : NumType ; END Num. $ cat Num.mod IMPLEMENTATION MODULE Num ; TYPE NumType = CARDINAL ; PROCEDURE add (left, right: NumType) : NumType ; BEGIN RETURN left+right END add ; END Num. $ gm2 Num.mod Num.mod:4:14: error: In definition module ‘wrapc’: opaque type (NumType) should be equivalent to a POINTER or an ADDRESS 4 | NumType = CARDINAL ; | ^~~~~~~~ Num.mod:4:14: error: if you really need a non POINTER type use the -fextended-opaque switch wrapc is incorrect - it should be Num.