Issue a positive message that inlining was performed in GNATprove mode,
when corresponding debug switch -gnatd_f is set.

Tested on x86_64-pc-linux-gnu, committed on trunk

2018-09-26  Yannick Moy  <m...@adacore.com>

gcc/ada/

        * errout.ads: Update comment for insertion character '?'.
        * inline.adb: Use simple insertion character '?' for GNATprove
        info messages.
        * sem_res.adb (Resolve_Call): Issue an info message on inlining
        in GNATprove mode.
--- gcc/ada/errout.ads
+++ gcc/ada/errout.ads
@@ -305,7 +305,9 @@ package Errout is
    --      Note: this usage is obsolete, use ?? ?*? ?$? ?x? ?X? to specify
    --      the string to be added when Warn_Doc_Switch is set to True. If this
    --      switch is True, then for simple ? messages it has no effect. This
-   --      simple form is to ease transition and will be removed later.
+   --      simple form is to ease transition and may be removed later except
+   --      for GNATprove-specific messages (info and warnings) which are not
+   --      subject to the same GNAT warning switches.
 
    --    Insertion character ?? (Two question marks: default warning)
    --      Like ?, but if the flag Warn_Doc_Switch is True, adds the string

--- gcc/ada/inline.adb
+++ gcc/ada/inline.adb
@@ -1615,7 +1615,7 @@ package body Inline is
             Set_Is_Inlined_Always (Subp, False);
 
             if Debug_Flag_Underscore_F then
-               Error_Msg_NE (Msg & "p?", N, Subp);
+               Error_Msg_NE (Msg, N, Subp);
             end if;
 
          elsif Has_Pragma_Inline_Always (Subp) then
@@ -1645,7 +1645,7 @@ package body Inline is
          Set_Is_Inlined_Always (Subp, False);
 
          if Debug_Flag_Underscore_F then
-            Error_Msg_NE (Msg & "p?", N, Subp);
+            Error_Msg_NE (Msg, N, Subp);
          end if;
 
       else

--- gcc/ada/sem_res.adb
+++ gcc/ada/sem_res.adb
@@ -6842,9 +6842,15 @@ package body Sem_Res is
                     ("cannot inline & (possible check on input parameters)?",
                      N, Nam_UA);
 
-               --  Otherwise, inline the call
+               --  Otherwise, inline the call, issuing an info message when
+               --  -gnatd_f is set.
 
                else
+                  if Debug_Flag_Underscore_F then
+                     Error_Msg_NE
+                       ("info: analyzing call to & in context?", N, Nam_UA);
+                  end if;
+
                   Expand_Inlined_Call (N, Nam_UA, Nam);
                end if;
             end if;

Reply via email to