This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: [PATCH,c++] introduce cp_build_function_call_nary
- From: Nathan Froyd <froydnj at codesourcery dot com>
- To: IainS <developer at sandoe-acoustics dot co dot uk>
- Cc: gcc-patches at gcc dot gnu dot org
- Date: Tue, 1 Jun 2010 04:52:05 -0700
- Subject: Re: [PATCH,c++] introduce cp_build_function_call_nary
- References: <20100526112019.GI3534@codesourcery.com> <B456CA9F-722E-4453-9F73-DCF3FBE2046C@sandoe-acoustics.co.uk> <20100526125541.GL3534@codesourcery.com> <E5585B9C-C0F9-4645-B008-5B5BCC3F535C@sandoe-acoustics.co.uk>
On Mon, May 31, 2010 at 04:30:50PM +0100, IainS wrote:
> On 26 May 2010, at 13:55, Nathan Froyd wrote:
>> Thank you. Taking apart
>> objc_build_message_expr/objc_finish_message_expr (oh, hi there
>> objcp_tsubst_copy_and_build!) looks a bit scary and certain to break
>> things if not done carefully.
>
> if that corresponds to r160066,
> then I'm afraid it broke try-catch handling in ObjC/C++.
> I will take a look ASAP (but work deadlines this week).
>
> that code is _not_ my favorite part of objc-act.c ;-)
r160066 is converting build_function_type -> build_function_type_list.
I don't have a Darwin box handy at the moment, but I think this patch
will fix things. Could you try it out and report back?
-Nathan
Index: objc-act.c
===================================================================
--- objc-act.c (revision 160066)
+++ objc-act.c (working copy)
@@ -4092,7 +4092,7 @@ build_next_objc_exception_stuff (void)
/* int _setjmp(...); */
/* If the user includes <setjmp.h>, this shall be superseded by
'int _setjmp(jmp_buf);' */
- temp_type = build_function_type_list (integer_type_node, NULL_TREE);
+ temp_type = build_varargs_function_type_list (integer_type_node, NULL_TREE);
objc_setjmp_decl
= add_builtin_function (TAG_SETJMP, temp_type, 0, NOT_BUILT_IN, NULL, NULL_TREE);