https://gcc.gnu.org/bugzilla/show_bug.cgi?id=119914
Gaius Mulley <gaius at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- Attachment #61183|0 |1 is obsolete| | --- Comment #3 from Gaius Mulley <gaius at gcc dot gnu.org> --- Created attachment 61189 --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=61189&action=edit Proposed fix for constant being passed to an unbounded array of BYTE $ gm2 constintarraybyte.mod constintarraybyte.mod:9:42: error: 2nd parameter failure due to assignment incompatibility between actual parameter ‘42’ and the 2nd formal ‘w’ parameter in procedure ‘Sprintf1’ 9 | s := Sprintf1 (InitString("abc%x\n"), 42) | ^~ /home/gaius/opt/lib/gcc/x86_64-pc-linux-gnu/16.0.0/m2/m2pim/FormatStrings.def:49:34: error: In procedure ‘Sprintf1’: formal parameter ‘w’ 49 | PROCEDURE Sprintf1 (fmt: String; w: ARRAY OF BYTE) : String ; | ^ /home/gaius/opt/lib/gcc/x86_64-pc-linux-gnu/16.0.0/m2/m2pim/wrapc.def:172:1: error: no scope active: actual parameter ‘42’ $ gm2 foo.mod foo.mod:44:48: error: 2nd parameter failure due to assignment incompatibility between actual parameter ‘42’ and the 2nd formal ‘w’ parameter in procedure ‘Sprintf1’ 44 | WriteString(Sprintf1(InitString("abc%u\n"), 42)); | ^~ foo.mod:47:48: error: 2nd parameter failure due to assignment incompatibility between actual parameter ‘42’ and the 2nd formal ‘w’ parameter in procedure ‘Sprintf1’ 47 | WriteString(Sprintf1(InitString("abc%x\n"), 42)); | ^~ /home/gaius/opt/lib/gcc/x86_64-pc-linux-gnu/16.0.0/m2/m2pim/FormatStrings.def:49:34: error: In procedure ‘Sprintf1’: formal parameter ‘w’ 49 | PROCEDURE Sprintf1 (fmt: String; w: ARRAY OF BYTE) : String ; | ^ /home/gaius/opt/lib/gcc/x86_64-pc-linux-gnu/16.0.0/m2/m2pim/FormatStrings.def:49:34: error: formal parameter ‘w’ /home/gaius/opt/lib/gcc/x86_64-pc-linux-gnu/16.0.0/m2/m2pim/FormatStrings.def:49:34: error: formal parameter ‘w’ /home/gaius/opt/lib/gcc/x86_64-pc-linux-gnu/16.0.0/m2/m2pim/wrapc.def:172:1: error: no scope active: actual parameter ‘42’ /home/gaius/opt/lib/gcc/x86_64-pc-linux-gnu/16.0.0/m2/m2pim/wrapc.def:172:1: error: actual parameter ‘42’ /home/gaius/opt/lib/gcc/x86_64-pc-linux-gnu/16.0.0/m2/m2pim/wrapc.def:172:1: error: actual parameter constant foo.mod:40:48: error: 2nd parameter failure due to assignment incompatibility between actual parameter constant and the 2nd formal ‘w’ parameter in procedure ‘Sprintf1’ 40 | WriteString(Sprintf1(InitString("abc%d\n"), -42)); | ^~~