diff options
author | Tucker Taft <taft@adacore.com> | 2022-09-13 15:28:42 +0200 |
---|---|---|
committer | Marc Poulhiès <poulhies@adacore.com> | 2022-09-26 11:02:30 +0200 |
commit | 91c706565f941ac7d317951cf3ab186f197252f0 (patch) | |
tree | 9edcbfe1f04aca3ede4c097f7f0abe733a7e14cf /gcc | |
parent | 4450567167e126051e3100de682e09f0902a2106 (diff) | |
download | gcc-91c706565f941ac7d317951cf3ab186f197252f0.zip gcc-91c706565f941ac7d317951cf3ab186f197252f0.tar.gz gcc-91c706565f941ac7d317951cf3ab186f197252f0.tar.bz2 |
ada: Make Original_Aspect_Pragma_Name more precise
This commit makes Original_Aspect_Pragma_Name more precise in cases
where there is a second level of indirection caused by pragmas being
turned into Check pragmas.
gcc/ada/
* sem_util.adb (Original_Aspect_Pragma_Name): Check for Check
pragmas.
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/ada/sem_util.adb | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/gcc/ada/sem_util.adb b/gcc/ada/sem_util.adb index c43a008..9ae082c 100644 --- a/gcc/ada/sem_util.adb +++ b/gcc/ada/sem_util.adb @@ -26559,6 +26559,14 @@ package body Sem_Util is Item_Nam := Chars (Original_Node (Pragma_Identifier (Original_Node (Item)))); + if Item_Nam = Name_Check then + -- Pragma "Check" preserves the original pragma name as its first + -- argument. + Item_Nam := + Chars (Expression (First (Pragma_Argument_Associations + (Original_Node (Item))))); + end if; + else pragma Assert (Nkind (Item) = N_Aspect_Specification); Item_Nam := Chars (Identifier (Item)); |