Hello Everyone,
        This patch is for the Cilk Plus branch, mainly affecting the G++ 
compiler. This patch will add the extra parameter (enum call_context) into 
finish_call_expr that was added in the weekly merge.

        I am planning to send approximately 4 patches today, and so please 
commit them in order. This is PATCH #1.


Thanks,

Balaji V. Iyer.
diff --git a/gcc/cp/ChangeLog.cilk b/gcc/cp/ChangeLog.cilk
index cbf022f..fc498f1 100644
--- a/gcc/cp/ChangeLog.cilk
+++ b/gcc/cp/ChangeLog.cilk
@@ -1,3 +1,10 @@
+2011-11-11  Balaji V. Iyer  <balaji.v.i...@intel.com>
+
+       * parser.c (cp_parser_userdef_char_literal): Added CALL_NORMAL
+       parameter to finish_call_expr function call.
+       (cp_parser_userdef_numeral_literal): Likewise.
+       (cp_parser_userdef_string_literal): Likewise.
+
 2011-10-22  Balaji V. Iyer  <balaji.v.i...@intel.com>
 
        * typeck2.c (split_nonconstant_init_1): Added "CALL_NORMAL" parameter
diff --git a/gcc/cp/parser.c b/gcc/cp/parser.c
index 7f03785..07572d4 100644
--- a/gcc/cp/parser.c
+++ b/gcc/cp/parser.c
@@ -3602,7 +3602,8 @@ cp_parser_userdef_char_literal (cp_parser *parser)
       release_tree_vector (vec);
       return error_mark_node;
     }
-  result = finish_call_expr (decl, &vec, false, true, tf_warning_or_error);
+  result = finish_call_expr (decl, &vec, false, true, CALL_NORMAL,
+                            tf_warning_or_error);
   release_tree_vector (vec);
 
   return result;
@@ -3662,7 +3663,8 @@ cp_parser_userdef_numeric_literal (cp_parser *parser)
   decl = lookup_function_nonclass (name, args, /*block_p=*/false);
   if (decl && decl != error_mark_node)
     {
-      result = finish_call_expr (decl, &args, false, true, tf_none);
+      result = finish_call_expr (decl, &args, false, true, CALL_NORMAL,
+                                tf_none);
       if (result != error_mark_node)
        {
          release_tree_vector (args);
@@ -3679,7 +3681,8 @@ cp_parser_userdef_numeric_literal (cp_parser *parser)
   decl = lookup_function_nonclass (name, args, /*block_p=*/false);
   if (decl && decl != error_mark_node)
     {
-      result = finish_call_expr (decl, &args, false, true, tf_none);
+      result = finish_call_expr (decl, &args, false, true, CALL_NORMAL,
+                                tf_none);
       if (result != error_mark_node)
        {
          release_tree_vector (args);
@@ -3697,7 +3700,8 @@ cp_parser_userdef_numeric_literal (cp_parser *parser)
     {
       tree tmpl_args = make_char_string_pack (num_string);
       decl = lookup_template_function (decl, tmpl_args);
-      result = finish_call_expr (decl, &args, false, true, tf_none);
+      result = finish_call_expr (decl, &args, false, true, CALL_NORMAL,
+                                tf_none);
       if (result != error_mark_node)
        {
          release_tree_vector (args);
@@ -3743,7 +3747,7 @@ cp_parser_userdef_string_literal (cp_token *token)
       release_tree_vector (vec);
       return error_mark_node;
     }
-  result = finish_call_expr (decl, &vec, false, true, tf_none);
+  result = finish_call_expr (decl, &vec, false, true, CALL_NORMAL, tf_none);
   if (result == error_mark_node)
     error ("unable to find valid user-defined string literal operator %qD."
           "  Possible missing length argument in string literal operator.",

Reply via email to