parse.y (function_invocation): Reverse parameter list.
authorJames A. Morrison <phython@gcc.gnu.org>
Wed, 15 Jun 2005 21:39:36 +0000 (21:39 +0000)
committerJames A. Morrison <phython@gcc.gnu.org>
Wed, 15 Jun 2005 21:39:36 +0000 (21:39 +0000)
2005-06-15  James A. Morrison  <phython@gcc.gnu.org>

        * parse.y (function_invocation): Reverse parameter list.
        * treetree.c (tree_code_get_expression): Don't reverse parameter list.

From-SVN: r100998

gcc/treelang/ChangeLog
gcc/treelang/parse.y
gcc/treelang/treetree.c

index 4932225..a0192f7 100644 (file)
@@ -1,3 +1,8 @@
+2005-06-15  James A. Morrison  <phython@gcc.gnu.org>
+
+       * parse.y (function_invocation): Reverse parameter list.
+       * treetree.c (tree_code_get_expression): Don't reverse parameter list.
+
 2005-06-12  Rafael ?vila de Esp?ndola   <rafael.espindola@gmail.com>
 
        * treetree.c (tree_code_get_expression): Call build_function_call_expr
index fe1d9b1..5e4fd74 100644 (file)
@@ -40,6 +40,7 @@ the GCC compiler.  */
 #include "coretypes.h"
 #include "tm.h"
 #include "timevar.h"
+#include "tree.h"
 
 #include "treelang.h"
 #include "treetree.h"
@@ -675,7 +676,8 @@ NAME LEFT_PARENTHESIS expressions_with_commas_opt RIGHT_PARENTHESIS {
     }
   type = tree_code_get_type (NUMERIC_TYPE (prod));
   prod->tp.pro.code = tree_code_get_expression (EXP_FUNCTION_INVOCATION, type,
-                                                proto->tp.pro.code, parms,
+                                                proto->tp.pro.code,
+                                               nreverse (parms),
                                                 NULL, tok->tp.tok.location);
   $$ = prod;
 }
index 90e1679..7ee707f 100644 (file)
@@ -698,12 +698,9 @@ tree_code_get_expression (unsigned int exp_type,
 
     case EXP_FUNCTION_INVOCATION:
       gcc_assert (op1);
-      {
-        TREE_USED (op1) = 1;
-        gcc_assert(TREE_TYPE (TREE_TYPE (op1)) == type);
-        tree arglist = nreverse(op2);
-        ret1 = build_function_call_expr(op1, arglist);
-      }
+      gcc_assert(TREE_TYPE (TREE_TYPE (op1)) == type);
+      TREE_USED (op1) = 1;
+      ret1 = build_function_call_expr(op1, op2);
       break;
 
     default: