https://gcc.gnu.org/bugzilla/show_bug.cgi?id=113536
Bug ID: 113536 Summary: valid reduction expression rejected by -gnatVo Product: gcc Version: 13.2.1 Status: UNCONFIRMED Severity: normal Priority: P3 Component: ada Assignee: unassigned at gcc dot gnu.org Reporter: devotus at yahoo dot com CC: dkm at gcc dot gnu.org Target Milestone: --- The legal program below fails to compile when `-gnatVo` is active. The error message is test_reduction.adb:13:15: error: missing argument for parameter "Accumulator" in call to "Do_Something" declared at line 9 The error seems to date back at least to gnat 10.2. pragma Ada_2022; with Ada.Text_IO; procedure Test_Reduction is subtype Value is Natural range 0 .. 255; function Do_Something (Accumulator : Value; Symbol : Character) return Value is (((Accumulator + Character'Pos (Symbol)) * 17) mod 256); function Do_It_By_Reduction (S : String) return Value is (S'Reduce (Do_Something, 0)); Test_It : constant Value := Do_It_By_Reduction ("Hello, world!"); begin Ada.Text_IO.Put_Line (Test_It'Image); end Test_Reduction;