diff mbox series

[Ada] Issue info message on inlined subprograms in GNATprove mode

Message ID 20180926092610.GA126252@adacore.com
State New
Headers show
Series [Ada] Issue info message on inlined subprograms in GNATprove mode | expand

Commit Message

Pierre-Marie de Rodat Sept. 26, 2018, 9:26 a.m. UTC
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  <moy@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.
diff mbox series

Patch

--- 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;