https://gcc.gnu.org/bugzilla/show_bug.cgi?id=112984
Bug ID: 112984 Summary: Compiling program with -Wpedantic shows warning in libraries Product: gcc Version: 14.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: --- Forwarded from the gm2 mailing list: Consider the hello world program below: MODULE test_hello; FROM STextIO IMPORT WriteString, WriteLn; BEGIN WriteLn; WriteString("Hello, World!"); WriteLn; WriteLn; END test_hello. if compiled with -Wpedantic gm2 -fiso -fsoft-check-all -Wpedantic test_hello.mod /home/gaius/opt/lib/gcc/x86_64-pc-linux-gnu/14.0.0/m2/m2iso/SYSTEM.mod:31:1: error: In implementation module ‘SYSTEM’: symbol (memcpy) has already been imported 31 | CONST | ^~~~~ /home/gaius/opt/lib/gcc/x86_64-pc-linux-gnu/14.0.0/m2/m2iso/M2RTS.mod:35:1: error: In implementation module ‘M2RTS’: symbol (ADDRESS) has already been imported 35 | FROM ASCII IMPORT nl, nul ; | ^~~~ /home/gaius/opt/lib/gcc/x86_64-pc-linux-gnu/14.0.0/m2/m2iso/TextIO.mod:31:1: error: In implementation module ‘TextIO’: symbol (IOChan) has already been imported 31 | FROM SYSTEM IMPORT ADR ; | ^~~~ /home/gaius/opt/lib/gcc/x86_64-pc-linux-gnu/14.0.0/m2/m2iso/IOChan.mod:32:1: error: In implementation module ‘IOChan’: symbol (IOConsts) has already been imported 32 | FROM EXCEPTIONS IMPORT ExceptionSource, RAISE, AllocateSource, | ^~~~ /home/gaius/opt/lib/gcc/x86_64-pc-linux-gnu/14.0.0/m2/m2iso/IOLink.mod:31:1: error: In implementation module ‘IOLink’: symbol (SYSTEM) has already been imported 31 | FROM Storage IMPORT ALLOCATE, DEALLOCATE ; | ^~~~ /home/gaius/opt/lib/gcc/x86_64-pc-linux-gnu/14.0.0/m2/m2iso/IOLink.mod:31:1: error: symbol (IOChan) has already been imported /home/gaius/opt/lib/gcc/x86_64-pc-linux-gnu/14.0.0/m2/m2iso/RTfio.mod:30:1: error: In implementation module ‘RTfio’: symbol (DeviceTablePtr) has already been imported 30 | FROM RTio IMPORT GetFile ; | ^~~~ /home/gaius/opt/lib/gcc/x86_64-pc-linux-gnu/14.0.0/m2/m2iso/RTgen.mod:35:1: error: In implementation module ‘RTgen’: symbol (DeviceTablePtr) has already been imported 35 | IMPORT ChanConsts ; | ^~~~~~ /home/gaius/opt/lib/gcc/x86_64-pc-linux-gnu/14.0.0/m2/m2iso/RTgen.mod:46:1: error: symbol (doWBytes) has already been imported 46 | FROM ChanConsts IMPORT FlagSet, readFlag, writeFlag, rawFlag, | ^~~~ /home/gaius/opt/lib/gcc/x86_64-pc-linux-gnu/14.0.0/m2/m2iso/RTgen.mod:46:1: error: symbol (GenDevIF) has already been imported /home/gaius/opt/lib/gcc/x86_64-pc-linux-gnu/14.0.0/m2/m2iso/TextUtil.mod:9:1: error: In implementation module ‘TextUtil’: symbol (IOChan) has already been imported 9 | PROCEDURE SkipSpaces (cid: IOChan.ChanId) ; | ^~~~~~~~~ /home/gaius/opt/lib/gcc/x86_64-pc-linux-gnu/14.0.0/m2/m2pim/Indexing.mod:33:1: error: In implementation module ‘Indexing’: symbol (ADDRESS) has already been imported 33 | CONST shows many warnings in the libraries (and it looks as if an error should be a warning possibly).