diff options
author | Arnaud Charlet <charlet@adacore.com> | 2016-04-21 08:52:31 +0000 |
---|---|---|
committer | Arnaud Charlet <charlet@gcc.gnu.org> | 2016-04-21 10:52:31 +0200 |
commit | 0ef5cd0ad8b4f382dca65bbd47154ee6777f4446 (patch) | |
tree | 5dac84b6aef6d582a4d11e3b9b1417281b7e3c4f /gcc | |
parent | 2d6aa71558f460ef00af8420e81e01f46d95da84 (diff) | |
download | gcc-0ef5cd0ad8b4f382dca65bbd47154ee6777f4446.zip gcc-0ef5cd0ad8b4f382dca65bbd47154ee6777f4446.tar.gz gcc-0ef5cd0ad8b4f382dca65bbd47154ee6777f4446.tar.bz2 |
exp_aggr.adb (Component_Not_OK_For_Backend): Refine previous change to take into account Per_Object_Constraint field rather...
2016-04-21 Arnaud Charlet <charlet@adacore.com>
* 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.
From-SVN: r235314
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/ada/ChangeLog | 12 | ||||
-rw-r--r-- | gcc/ada/exp_aggr.adb | 3 | ||||
-rw-r--r-- | gcc/ada/exp_ch6.adb | 7 |
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; |