From: Yannick Moy Date: Thu, 11 Jul 2019 08:03:24 +0000 (+0000) Subject: [Ada] Avoid spurious errors on dimensionality checking in GNATprove X-Git-Tag: misc/cutover-git~4043 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=8b727104817f1b0c2a03013ed397e99f8673405c;p=thirdparty%2Fgcc.git [Ada] Avoid spurious errors on dimensionality checking in GNATprove In the special GNATprove mode of the frontend, automatic inlining is performed, which may lead to spurious errors on dimensionality checking. Avoid performing this checking on inlined code, which has already been checked for dimensionality errors. There is no impact on compilation. 2019-07-11 Yannick Moy gcc/ada/ * sem_res.adb (Resolve_Call): Do not perform dimensionality checking on inlined bodies. From-SVN: r273405 --- diff --git a/gcc/ada/ChangeLog b/gcc/ada/ChangeLog index a5273a8644dd..59f20c489e5f 100644 --- a/gcc/ada/ChangeLog +++ b/gcc/ada/ChangeLog @@ -1,3 +1,8 @@ +2019-07-11 Yannick Moy + + * sem_res.adb (Resolve_Call): Do not perform dimensionality + checking on inlined bodies. + 2019-07-11 Yannick Moy * debug.adb: Flip meaning of debug switch -gnatdF. diff --git a/gcc/ada/sem_res.adb b/gcc/ada/sem_res.adb index 730f17304d6f..4ca74f8543c5 100644 --- a/gcc/ada/sem_res.adb +++ b/gcc/ada/sem_res.adb @@ -6949,7 +6949,9 @@ package body Sem_Res is -- Check the dimensions of the actuals in the call. For function calls, -- propagate the dimensions from the returned type to N. - Analyze_Dimension_Call (N, Nam); + if not In_Inlined_Body then + Analyze_Dimension_Call (N, Nam); + end if; -- All done, evaluate call and deal with elaboration issues