aboutsummaryrefslogtreecommitdiff
path: root/gcc/ada/exp_ch6.adb
diff options
context:
space:
mode:
authorArnaud Charlet <charlet@gcc.gnu.org>2015-11-12 12:46:35 +0100
committerArnaud Charlet <charlet@gcc.gnu.org>2015-11-12 12:46:35 +0100
commitb3083540f530b6e28e57756e23c98670f69df4af (patch)
treea52654e9c790e644fe4fa78b2e42992e6f4cd24d /gcc/ada/exp_ch6.adb
parent7408c4a5e0d6723e11b043d9705b4e5b6b3b8a66 (diff)
downloadgcc-b3083540f530b6e28e57756e23c98670f69df4af.zip
gcc-b3083540f530b6e28e57756e23c98670f69df4af.tar.gz
gcc-b3083540f530b6e28e57756e23c98670f69df4af.tar.bz2
[multiple changes]
2015-11-12 Tristan Gingold <gingold@adacore.com> * snames.ads-tmpl: Name_Gnat_Extended_Ravenscar: New identifier. * s-rident.ads (Profile_Name): Add GNAT_Extended_Ravenscar. (Profile_Info): Add new entry for GNAT_Extended_Ravenscar. * sem_prag.adb (Set_Ravenscar_Profile): Add Profile parameter to handle various ravenscar profiles. Adjust error messages. (Analyze_Pragma): Handle GNAT_Extended_Ravenscar profile. * targparm.adb (Get_Target_Parameters): Handle GNAT_Extended_Ravenscar profile. 2015-11-12 Ed Schonberg <schonberg@adacore.com> * sem_warn.adb (Warn_On_Unreferenced_Entity): If the entity is an Out_Parameter the front-end does not emit any warning on it, so do not suppress warnings on the entity because the backend might be able to determine an uninitialized path and warn accordingly. 2015-11-12 Ed Schonberg <schonberg@adacore.com> * sem_ch4.adb (Analyze_Selected_Component): Diagnose an attempt to reference an internal entity from a synchronized type from within the body of that type, when the prefix of the selected component is not the current instance. 2015-11-12 Ed Falis <falis@adacore.com> * s-stchop-vxworks.adb: Clean up in stack checking code. 2015-11-12 Gary Dismukes <dismukes@adacore.com> * exp_ch6.adb (Is_Build_In_Place_Function_Call): Test Expression (N) in N_Type_Conversion cases as well, since conversions can occur in actual parameter contexts. (Make_Build_In_Place_Call_In_Anonymous_Context): Retrieve function call from Expression (Func_Call) when Nkind (Func_Call) is N_Type_Conversion, since conversions are allowed in "anonymous" contexts (specifically, as actual parameters). From-SVN: r230242
Diffstat (limited to 'gcc/ada/exp_ch6.adb')
-rw-r--r--gcc/ada/exp_ch6.adb12
1 files changed, 8 insertions, 4 deletions
diff --git a/gcc/ada/exp_ch6.adb b/gcc/ada/exp_ch6.adb
index 6aaeb87..bdde498 100644
--- a/gcc/ada/exp_ch6.adb
+++ b/gcc/ada/exp_ch6.adb
@@ -6893,10 +6893,12 @@ package body Exp_Ch6 is
return False;
end if;
- -- Step past qualification or unchecked conversion (the latter can occur
- -- in cases of calls to 'Input).
+ -- Step past qualification, type conversion (which can occur in actual
+ -- parameter contexts), and unchecked conversion (which can occur in
+ -- cases of calls to 'Input).
if Nkind_In (Exp_Node, N_Qualified_Expression,
+ N_Type_Conversion,
N_Unchecked_Type_Conversion)
then
Exp_Node := Expression (N);
@@ -7425,10 +7427,12 @@ package body Exp_Ch6 is
Return_Obj_Decl : Entity_Id;
begin
- -- Step past qualification or unchecked conversion (the latter can occur
- -- in cases of calls to 'Input).
+ -- Step past qualification, type conversion (which can occur in actual
+ -- parameter contexts), and unchecked conversion (which can occur in
+ -- cases of calls to 'Input).
if Nkind_In (Func_Call, N_Qualified_Expression,
+ N_Type_Conversion,
N_Unchecked_Type_Conversion)
then
Func_Call := Expression (Func_Call);