diff options
author | Yannick Moy <moy@adacore.com> | 2019-08-19 08:35:35 +0000 |
---|---|---|
committer | Pierre-Marie de Rodat <pmderodat@gcc.gnu.org> | 2019-08-19 08:35:35 +0000 |
commit | c811dd91e184db204073d04c28ed107888b39518 (patch) | |
tree | fdffc74159e6b658e73dc2133acb7cebcae8e6bc /gcc | |
parent | a4bbe10deb69d4885baffde7fa42c0ba137e7dc8 (diff) | |
download | gcc-c811dd91e184db204073d04c28ed107888b39518.zip gcc-c811dd91e184db204073d04c28ed107888b39518.tar.gz gcc-c811dd91e184db204073d04c28ed107888b39518.tar.bz2 |
[Ada] Do not skip non-aliasing checking when inlining in GNATprove
When code is inlinined for proof in the special mode for GNATprove, Ada
rules about non-aliasing should still be checked. Now fixed.
There is no impact on compilation.
2019-08-19 Yannick Moy <moy@adacore.com>
gcc/ada/
* sem_res.adb (Resolve_Call): Check non-aliasing rules before
GNATprove inlining.
From-SVN: r274640
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/ada/ChangeLog | 5 | ||||
-rw-r--r-- | gcc/ada/sem_res.adb | 8 |
2 files changed, 9 insertions, 4 deletions
diff --git a/gcc/ada/ChangeLog b/gcc/ada/ChangeLog index 9fc8c9e..9222a98 100644 --- a/gcc/ada/ChangeLog +++ b/gcc/ada/ChangeLog @@ -1,3 +1,8 @@ +2019-08-19 Yannick Moy <moy@adacore.com> + + * sem_res.adb (Resolve_Call): Check non-aliasing rules before + GNATprove inlining. + 2019-08-19 Eric Botcazou <ebotcazou@adacore.com> * inline.adb (Add_Inlined_Body): Do not add pending diff --git a/gcc/ada/sem_res.adb b/gcc/ada/sem_res.adb index b27171f..8f2e358 100644 --- a/gcc/ada/sem_res.adb +++ b/gcc/ada/sem_res.adb @@ -6968,6 +6968,10 @@ package body Sem_Res is Build_Call_Marker (N); + Mark_Use_Clauses (Subp); + + Warn_On_Overlapping_Actuals (Nam, N); + -- In GNATprove mode, expansion is disabled, but we want to inline some -- subprograms to facilitate formal verification. Indirect calls through -- a subprogram type or within a generic cannot be inlined. Inlining is @@ -7116,10 +7120,6 @@ package body Sem_Res is end if; end if; end if; - - Mark_Use_Clauses (Subp); - - Warn_On_Overlapping_Actuals (Nam, N); end Resolve_Call; ----------------------------- |