OSDN Git Service

2005-09-08 Andrew Pinski <pinskia@physics.uc.edu>
authorpinskia <pinskia@138bc75d-0d04-0410-961f-82ee72b054a4>
Thu, 8 Sep 2005 13:09:49 +0000 (13:09 +0000)
committerpinskia <pinskia@138bc75d-0d04-0410-961f-82ee72b054a4>
Thu, 8 Sep 2005 13:09:49 +0000 (13:09 +0000)
        PR objc/20574
        PR objc/19324
        * c-parser.c (c_parser_objc_method_definition): If the next
        token is not "{", error out and don't start the function.

2005-09-08  Andrew Pinski  <pinskia@physics.uc.edu>

        PR objc/20574
        PR objc/19324
        * objc.dg/error-1.m: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@104032 138bc75d-0d04-0410-961f-82ee72b054a4

gcc/ChangeLog
gcc/c-parser.c
gcc/testsuite/ChangeLog
gcc/testsuite/objc.dg/error-1.m [new file with mode: 0644]

index a360100..3edc2b3 100644 (file)
@@ -1,5 +1,12 @@
 2005-09-08  Andrew Pinski  <pinskia@physics.uc.edu>
 
+       PR objc/20574
+       PR objc/19324
+       * c-parser.c (c_parser_objc_method_definition): If the next
+       token is not "{", error out and don't start the function.
+
+2005-09-08  Andrew Pinski  <pinskia@physics.uc.edu>
+
        * tree-vrp.c (extract_range_from_expr): Move the check for non
        nullness after the check for gimple invariant.
 
index 268fa90..ce03569 100644 (file)
@@ -5723,6 +5723,11 @@ c_parser_objc_method_definition (c_parser *parser)
       if (pedantic)
        pedwarn ("extra semicolon in method definition specified");
     }
+  if (!c_parser_next_token_is (parser, CPP_OPEN_BRACE))
+    {
+      c_parser_error (parser, "expected %<{%>");
+      return;
+    }
   objc_pq_context = 0;
   objc_start_method_definition (decl);
   add_stmt (c_parser_compound_statement (parser));
index c68a2ae..e43b16c 100644 (file)
@@ -1,3 +1,9 @@
+2005-09-08  Andrew Pinski  <pinskia@physics.uc.edu>
+
+       PR objc/20574
+       PR objc/19324
+       * objc.dg/error-1.m: New test.
+
 2005-09-07  Richard Sandiford  <richard@codesourcery.com>
 
        PR fortran/23373
diff --git a/gcc/testsuite/objc.dg/error-1.m b/gcc/testsuite/objc.dg/error-1.m
new file mode 100644 (file)
index 0000000..86b9d7f
--- /dev/null
@@ -0,0 +1,6 @@
+/* { dg-options "-w" } */
+/* { dg-do compile } */
+@implementation A
++B  
++C {} /* { dg-error "expected '\{' before '\\\+' token" } */
+@end