When calling Error_Msg_FE with a message string that contains "<<"
insertion characters, the error reporting machinery was accessing
uninitialized Error_Msg_Warn variable to decide whether to emit error or
a warning.

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

gcc/ada/

        * sem_util.adb (Bad_Predicated_Subtype_Use): Emit an
        unconditional error, not a conditional warning.
diff --git a/gcc/ada/sem_util.adb b/gcc/ada/sem_util.adb
--- a/gcc/ada/sem_util.adb
+++ b/gcc/ada/sem_util.adb
@@ -982,7 +982,7 @@ package body Sem_Util is
                    Reason => PE_Bad_Predicated_Generic_Type));
 
             else
-               Error_Msg_FE (Msg & "<<", N, Typ);
+               Error_Msg_FE (Msg, N, Typ);
             end if;
 
          else


Reply via email to