aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
Diffstat (limited to 'gcc')
-rw-r--r--gcc/ada/ChangeLog12
-rw-r--r--gcc/ada/exp_aggr.adb3
-rw-r--r--gcc/ada/exp_ch6.adb7
3 files changed, 15 insertions, 7 deletions
diff --git a/gcc/ada/ChangeLog b/gcc/ada/ChangeLog
index f52d8e3..ba209af 100644
--- a/gcc/ada/ChangeLog
+++ b/gcc/ada/ChangeLog
@@ -1,11 +1,13 @@
-2016-04-21 Hristian Kirtchev <kirtchev@adacore.com>
+2016-04-21 Arnaud Charlet <charlet@adacore.com>
- * sem_ch5.adb: Minor reformatting.
+ * exp_aggr.adb (Component_Not_OK_For_Backend): Refine previous
+ change to take into account Per_Object_Constraint field rather
+ than special casing strings.
+ * exp_ch6.adb: Fix typo in Replace_Returns.
-2016-04-21 Eric Botcazou <ebotcazou@adacore.com>
+2016-04-21 Hristian Kirtchev <kirtchev@adacore.com>
- * exp_ch2.adb (Expand_Current_Value): Make an appropriate
- character literal if the entity is of a character type.
+ * sem_ch5.adb: Minor reformatting.
2016-04-21 Arnaud Charlet <charlet@adacore.com>
diff --git a/gcc/ada/exp_aggr.adb b/gcc/ada/exp_aggr.adb
index 20932d3..334955b 100644
--- a/gcc/ada/exp_aggr.adb
+++ b/gcc/ada/exp_aggr.adb
@@ -6024,7 +6024,8 @@ package body Exp_Aggr is
return True;
elsif Modify_Tree_For_C
- and then Ekind (Etype (Expr_Q)) = E_String_Literal_Subtype
+ and then Nkind (C) in N_Entity
+ and then Has_Per_Object_Constraint (C)
then
Static_Components := False;
return True;
diff --git a/gcc/ada/exp_ch6.adb b/gcc/ada/exp_ch6.adb
index ff9530b..162849e 100644
--- a/gcc/ada/exp_ch6.adb
+++ b/gcc/ada/exp_ch6.adb
@@ -739,7 +739,7 @@ package body Exp_Ch6 is
begin
Part := First (Elsif_Parts (Stmt));
while Present (Part) loop
- Replace_Returns (Part, Then_Statements (Part));
+ Replace_Returns (Param_Id, Then_Statements (Part));
Next (Part);
end loop;
end;
@@ -806,6 +806,11 @@ package body Exp_Ch6 is
Make_Handled_Sequence_Of_Statements (Loc,
Statements => Stmts));
+ -- If the function is a generic instance, so is the new procedure.
+ -- Set flag accordingly so that the proper renaming declarations are
+ -- generated.
+
+ Set_Is_Generic_Instance (Proc_Id, Is_Generic_Instance (Func_Id));
return New_Body;
end Build_Procedure_Body_Form;