aboutsummaryrefslogtreecommitdiff
path: root/gcc/ada
diff options
context:
space:
mode:
authorJustin Squirek <squirek@adacore.com>2020-07-30 14:54:42 -0400
committerPierre-Marie de Rodat <derodat@adacore.com>2020-10-21 03:22:44 -0400
commitbd4dc93d42b0148cf24a8a4738a0f27d1be580f8 (patch)
tree7213d0e76973a596dbf29fcf9eae953fa348851c /gcc/ada
parentc43098ca632397f5b5af14d7818f6fcdb02a2b6f (diff)
downloadgcc-bd4dc93d42b0148cf24a8a4738a0f27d1be580f8.zip
gcc-bd4dc93d42b0148cf24a8a4738a0f27d1be580f8.tar.gz
gcc-bd4dc93d42b0148cf24a8a4738a0f27d1be580f8.tar.bz2
[Ada] Incorrect associations for extra accessibility parameters
gcc/ada/ * exp_ch6.adb (Expand_Call_Helper): Modify calls to Add_Extra_Actual to use Extra_Accessibility instead of Get_Accessibility for the EF parameter.
Diffstat (limited to 'gcc/ada')
-rw-r--r--gcc/ada/exp_ch6.adb24
1 files changed, 12 insertions, 12 deletions
diff --git a/gcc/ada/exp_ch6.adb b/gcc/ada/exp_ch6.adb
index 57995a4..7b50812 100644
--- a/gcc/ada/exp_ch6.adb
+++ b/gcc/ada/exp_ch6.adb
@@ -3658,7 +3658,7 @@ package body Exp_Ch6 is
-- Create possible extra actual for accessibility level
- if Present (Get_Accessibility (Formal)) then
+ if Present (Extra_Accessibility (Formal)) then
-- Ada 2005 (AI-252): If the actual was rewritten as an Access
-- attribute, then the original actual may be an aliased object
@@ -3748,7 +3748,7 @@ package body Exp_Ch6 is
Add_Extra_Actual
(Expr =>
New_Occurrence_Of (Get_Accessibility (Parm_Ent), Loc),
- EF => Get_Accessibility (Formal));
+ EF => Extra_Accessibility (Formal));
end;
elsif Is_Entity_Name (Prev_Orig) then
@@ -3782,7 +3782,7 @@ package body Exp_Ch6 is
(Expr =>
New_Occurrence_Of
(Get_Accessibility (Parm_Ent), Loc),
- EF => Get_Accessibility (Formal));
+ EF => Extra_Accessibility (Formal));
-- If the actual access parameter does not have an
-- associated extra formal providing its scope level,
@@ -3794,7 +3794,7 @@ package body Exp_Ch6 is
(Expr =>
Make_Integer_Literal (Loc,
Intval => Scope_Depth (Standard_Standard)),
- EF => Get_Accessibility (Formal));
+ EF => Extra_Accessibility (Formal));
end if;
end;
@@ -3804,7 +3804,7 @@ package body Exp_Ch6 is
else
Add_Extra_Actual
(Expr => Dynamic_Accessibility_Level (Prev_Orig),
- EF => Get_Accessibility (Formal));
+ EF => Extra_Accessibility (Formal));
end if;
-- If the actual is an access discriminant, then pass the level
@@ -3820,7 +3820,7 @@ package body Exp_Ch6 is
(Expr =>
Make_Integer_Literal (Loc,
Intval => Object_Access_Level (Prefix (Prev_Orig))),
- EF => Get_Accessibility (Formal));
+ EF => Extra_Accessibility (Formal));
-- All other cases
@@ -3878,7 +3878,7 @@ package body Exp_Ch6 is
New_Occurrence_Of
(Get_Accessibility
(Entity (Prev_Ult)), Loc),
- EF => Get_Accessibility (Formal));
+ EF => Extra_Accessibility (Formal));
-- Normal case, call Object_Access_Level. Note:
-- should be Dynamic_Accessibility_Level ???
@@ -3889,7 +3889,7 @@ package body Exp_Ch6 is
Make_Integer_Literal (Loc,
Intval =>
Object_Access_Level (Prev_Orig)),
- EF => Get_Accessibility (Formal));
+ EF => Extra_Accessibility (Formal));
end if;
-- Treat the unchecked attributes as library-level
@@ -3901,7 +3901,7 @@ package body Exp_Ch6 is
(Expr =>
Make_Integer_Literal (Loc,
Intval => Scope_Depth (Standard_Standard)),
- EF => Get_Accessibility (Formal));
+ EF => Extra_Accessibility (Formal));
-- No other cases of attributes returning access
-- values that can be passed to access parameters.
@@ -3923,7 +3923,7 @@ package body Exp_Ch6 is
(Expr =>
Make_Integer_Literal (Loc,
Intval => Scope_Depth (Current_Scope) + 1),
- EF => Get_Accessibility (Formal));
+ EF => Extra_Accessibility (Formal));
-- For most other cases we simply pass the level of the
-- actual's access type. The type is retrieved from
@@ -4151,7 +4151,7 @@ package body Exp_Ch6 is
Add_Extra_Actual
(Expr => New_Occurrence_Of (Lvl, Loc),
- EF => Get_Accessibility (Formal));
+ EF => Extra_Accessibility (Formal));
end;
-- General case uncomplicated by conditional expressions
@@ -4159,7 +4159,7 @@ package body Exp_Ch6 is
else
Add_Extra_Actual
(Expr => Dynamic_Accessibility_Level (Prev),
- EF => Get_Accessibility (Formal));
+ EF => Extra_Accessibility (Formal));
end if;
end case;
end if;