This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: ObjC/ObjC++: bug fixes for @catch


On Nov 27, 2010, at 4:24 PM, Nicola Pero wrote:
> This patch fixes a number of bugs, minor and missing/incomplete checks (and some ICEs) in GCC's parsing
> of Objective-C @catch syntax.

> Ok to commit ?

I like the first patch better...  We can trivially run subsets already, the total size of our testsuite is trivial.  We can parallelize it as is already.

Ok.

> In gcc/objc/:
> 2010-11-28  Nicola Pero  <nicola.pero@meta-innovation.com>
> 
>        * objc-act.c (objc_eh_runtime_type): Avoid ICE if error_mark_node
>        is passed as argument.
>        (objc_begin_catch_clause): Added code to deal with an
>        error_mark_node or NULL_TREE argument.  Improved checks for
>        invalid arguments.  Added code to traverse typedefs.
> 
> In gcc/testsuite/:
> 2010-11-28  Nicola Pero  <nicola.pero@meta-innovation.com>
> 
>        * objc.dg/exceptions-1.m: New.
>        * objc.dg/exceptions-2.m: New.
>        * objc.dg/exceptions-3.m: New.
>        * objc.dg/exceptions-4.m: New.
>        * objc.dg/exceptions-5.m: New.
>        * obj-c++.dg/exceptions-1.mm: New.
>        * obj-c++.dg/exceptions-2.mm: New.
>        * obj-c++.dg/exceptions-3.mm: New.
>        * obj-c++.dg/exceptions-4.mm: New.
>        * obj-c++.dg/exceptions-5.mm: New.
> 
> In gcc/cp/:
> 2010-11-28  Nicola Pero  <nicola.pero@meta-innovation.com>
> 
>        * parser.c (cp_parser_objc_try_catch_finally_statement): Parse
>        @catch(...)  and pass NULL_TREE to objc_begin_catch_clause() in
>        that case.  Improved error recovery.  Reorganized code to be
>        almost identical to c_parser_objc_try_catch_finally_statement.
> 
> In gcc/:
> 2010-11-28  Nicola Pero  <nicola.pero@meta-innovation.com>
> 
>        * c-parser.c (c_parser_objc_try_catch_statement): Renamed to
>        c_parser_objc_try_catch_finally_statement for consistency with the
>        C++ parser.  Parse @catch(...) and pass NULL_TREE to
>        objc_begin_catch_clause() in that case.  Improved error recovery.
>        Reorganized code to be almost identical to
>        cp_parser_objc_try_catch_finally_statement.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]