From: Yannick Moy Date: Tue, 12 Sep 2023 07:54:32 +0000 (+0200) Subject: ada: Clarify RM references that justify a constraint check X-Git-Tag: basepoints/gcc-15~5874 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=92361698288fd3192655f409f603b88b0aa182b8;p=thirdparty%2Fgcc.git ada: Clarify RM references that justify a constraint check gcc/ada/ * exp_ch5.adb (Expand_N_Case_Statement): Reference both sections of the Ada RM that deal with case statements and case expressions to justify the insertion of a runtime check. --- diff --git a/gcc/ada/exp_ch5.adb b/gcc/ada/exp_ch5.adb index d55fdb3e2e5a..cd3b02b9360c 100644 --- a/gcc/ada/exp_ch5.adb +++ b/gcc/ada/exp_ch5.adb @@ -4092,8 +4092,9 @@ package body Exp_Ch5 is end if; -- First step is to worry about possible invalid argument. The RM - -- requires (RM 5.4(13)) that if the result is invalid (e.g. it is - -- outside the base range), then Constraint_Error must be raised. + -- requires (RM 4.5.7 (21/3) and 5.4 (13)) that if the result is + -- invalid (e.g. it is outside the base range), then Constraint_Error + -- must be raised. -- Case of validity check required (validity checks are on, the -- expression is not known to be valid, and the case statement @@ -4274,7 +4275,7 @@ package body Exp_Ch5 is -- If Predicates_Ignored is true the value does not satisfy the -- predicate, and there is no Others choice, Constraint_Error - -- must be raised (4.5.7 (21/3)). + -- must be raised (RM 4.5.7 (21/3) and 5.4 (13)). if Predicates_Ignored (Etype (Expr)) then declare