From: Gary Dismukes <[email protected]>

The compiler should be allowing formal functions to be defaulted by
an expression when the core extensions are enabled, but it was
requiring all extensions to be enabled.

gcc/ada/ChangeLog:

        * par-ch12.adb (P_Formal_Subprogram_Declaration): Pass True for
        the Is_Core_Extension parameter on call to Error_Msg_GNAT_Extension.

Tested on x86_64-pc-linux-gnu, committed on master.

---
 gcc/ada/par-ch12.adb | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/gcc/ada/par-ch12.adb b/gcc/ada/par-ch12.adb
index ebd049ca734..3b9cb3c0355 100644
--- a/gcc/ada/par-ch12.adb
+++ b/gcc/ada/par-ch12.adb
@@ -1207,7 +1207,8 @@ package body Ch12 is
 
          elsif Token = Tok_Left_Paren then
             Error_Msg_GNAT_Extension
-              ("expression default for formal subprograms", Token_Ptr);
+              ("expression default for formal subprograms", Token_Ptr,
+               Is_Core_Extension => True);
 
             if Nkind (Spec_Node) = N_Function_Specification then
                Scan;  --  past "("
-- 
2.53.0

Reply via email to