aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorEric Botcazou <ebotcazou@adacore.com>2010-06-20 09:09:21 +0000
committerEric Botcazou <ebotcazou@gcc.gnu.org>2010-06-20 09:09:21 +0000
commit1d63e3de09ef2a47b63f29db8da5289404cec4d1 (patch)
tree8f9fed701053d5ea312f259025a0264e240c8623
parent40349fdf4f07928c0b617905dcf60703067266f1 (diff)
downloadgcc-1d63e3de09ef2a47b63f29db8da5289404cec4d1.zip
gcc-1d63e3de09ef2a47b63f29db8da5289404cec4d1.tar.gz
gcc-1d63e3de09ef2a47b63f29db8da5289404cec4d1.tar.bz2
trans.c (Subprogram_Body_to_gnu): Use while instead of for loop.
* gcc-interface/trans.c (Subprogram_Body_to_gnu): Use while instead of for loop. Call build_constructor_from_list directly in the CICO case. From-SVN: r161046
-rw-r--r--gcc/ada/ChangeLog5
-rw-r--r--gcc/ada/gcc-interface/trans.c9
2 files changed, 9 insertions, 5 deletions
diff --git a/gcc/ada/ChangeLog b/gcc/ada/ChangeLog
index 965e7b2..b769e6f 100644
--- a/gcc/ada/ChangeLog
+++ b/gcc/ada/ChangeLog
@@ -1,3 +1,8 @@
+2010-06-20 Eric Botcazou <ebotcazou@adacore.com>
+
+ * gcc-interface/trans.c (Subprogram_Body_to_gnu): Use while instead of
+ for loop. Call build_constructor_from_list directly in the CICO case.
+
2010-06-18 Ed Schonberg <schonberg@adacore.com>
* freeze.adb (Build_And_Analyze_Renamed_Body): If the renaming
diff --git a/gcc/ada/gcc-interface/trans.c b/gcc/ada/gcc-interface/trans.c
index 4546c18..aec94b0 100644
--- a/gcc/ada/gcc-interface/trans.c
+++ b/gcc/ada/gcc-interface/trans.c
@@ -2462,9 +2462,8 @@ Subprogram_Body_to_gnu (Node_Id gnat_node)
{
/* Skip any entries that have been already filled in; they must
correspond to In Out parameters. */
- for (; gnu_cico_list && TREE_VALUE (gnu_cico_list);
- gnu_cico_list = TREE_CHAIN (gnu_cico_list))
- ;
+ while (gnu_cico_list && TREE_VALUE (gnu_cico_list))
+ gnu_cico_list = TREE_CHAIN (gnu_cico_list);
/* Do any needed references for padded types. */
TREE_VALUE (gnu_cico_list)
@@ -2546,8 +2545,8 @@ Subprogram_Body_to_gnu (Node_Id gnat_node)
if (list_length (gnu_cico_list) == 1)
gnu_retval = TREE_VALUE (gnu_cico_list);
else
- gnu_retval = gnat_build_constructor (TREE_TYPE (gnu_subprog_type),
- gnu_cico_list);
+ gnu_retval = build_constructor_from_list (TREE_TYPE (gnu_subprog_type),
+ gnu_cico_list);
add_stmt_with_node (build_return_expr (gnu_result_decl, gnu_retval),
End_Label (Handled_Statement_Sequence (gnat_node)));