From 45742b619285f53db63153ad094d12dc98504e4b Mon Sep 17 00:00:00 2001 From: Piotr Trojanek Date: Wed, 8 Dec 2021 22:58:22 +0100 Subject: [PATCH] [Ada] Escalate pre-continuation messages from warnings to errors gcc/ada/ * errout.adb (Error_Msg_Internal): Propagate warnings-as-error flag from continuation message to its preceding messages. --- gcc/ada/errout.adb | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/gcc/ada/errout.adb b/gcc/ada/errout.adb index 00230a25fd7e..0778f54944d2 100644 --- a/gcc/ada/errout.adb +++ b/gcc/ada/errout.adb @@ -1240,10 +1240,13 @@ package body Errout is or else Warning_Treated_As_Error (Get_Warning_Tag (Cur_Msg))); - -- Propagate Warn_Err to this message and preceding continuations + -- Propagate Warn_Err to this message and preceding continuations. + -- Likewise, propagate Is_Warning_Msg, because the current continued + -- message could have been escalated from warning to error. for J in reverse 1 .. Errors.Last loop Errors.Table (J).Warn_Err := Warn_Err; + Errors.Table (J).Warn := Is_Warning_Msg; exit when not Errors.Table (J).Msg_Cont; end loop; -- 2.47.3