diff options
author | Yannick Moy <moy@adacore.com> | 2023-12-19 10:52:38 +0100 |
---|---|---|
committer | Marc Poulhiès <poulhies@adacore.com> | 2024-05-06 11:11:27 +0200 |
commit | bd2462a8473b7ee7cabd4040553ae13606273723 (patch) | |
tree | cb524c0b4ba5dcfb0e41b39f14a342de49861141 | |
parent | 9bc49f5ac1e1140f00f488f5d05294541079fb1b (diff) | |
download | gcc-bd2462a8473b7ee7cabd4040553ae13606273723.zip gcc-bd2462a8473b7ee7cabd4040553ae13606273723.tar.gz gcc-bd2462a8473b7ee7cabd4040553ae13606273723.tar.bz2 |
ada: Fix detection of (Un)Hide_Info pragma in GNATprove mode
Spec or body may not be in a list for subunit.
gcc/ada/
* inline.adb (Can_Be_Inlined_In_GNATprove_Mode): Add guard.
-rw-r--r-- | gcc/ada/inline.adb | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/gcc/ada/inline.adb b/gcc/ada/inline.adb index 98bed86..b7a6cc9 100644 --- a/gcc/ada/inline.adb +++ b/gcc/ada/inline.adb @@ -1819,6 +1819,7 @@ package body Inline is begin if Present (Spec_Id) + and then Is_List_Member (Unit_Declaration_Node (Spec_Id)) and then Has_Hide_Unhide_Pragma (Next (Unit_Declaration_Node (Spec_Id))) then @@ -1829,7 +1830,9 @@ package body Inline is Subp_Body : constant N_Subprogram_Body_Id := Unit_Declaration_Node (Body_Id); begin - return Has_Hide_Unhide_Pragma (Next (Subp_Body)) + return + (Is_List_Member (Subp_Body) + and then Has_Hide_Unhide_Pragma (Next (Subp_Body))) or else Has_Hide_Unhide_Pragma (First (Declarations (Subp_Body))); end; |