re PR objc/29197 (ICE after error with array type with undefined variable)
2008-03-25 Andrew Pinski <pinskia@gmail.com> PR objc/29197 * objc-act.c (encode_type): Handle when type is error_mark_node. (objc_push_parm): Handle when the type of parm is error_mark_node. 2008-03-25 Andrew Pinski <pinskia@gmail.com> PR objc/29197 * objc.dg/method-20.m: New testcase. From-SVN: r133540
This commit is contained in:
parent
0f9c821f73
commit
9c349a39eb
@ -1,3 +1,9 @@
|
|||||||
|
2008-03-25 Andrew Pinski <pinskia@gmail.com>
|
||||||
|
|
||||||
|
PR objc/29197
|
||||||
|
* objc-act.c (encode_type): Handle when type is error_mark_node.
|
||||||
|
(objc_push_parm): Handle when the type of parm is error_mark_node.
|
||||||
|
|
||||||
2008-03-25 Tom Tromey <tromey@redhat.com>
|
2008-03-25 Tom Tromey <tromey@redhat.com>
|
||||||
|
|
||||||
* Make-lang.in (objc_OBJS): New variable.
|
* Make-lang.in (objc_OBJS): New variable.
|
||||||
|
@ -8075,6 +8075,9 @@ encode_type (tree type, int curtype, int format)
|
|||||||
enum tree_code code = TREE_CODE (type);
|
enum tree_code code = TREE_CODE (type);
|
||||||
char c;
|
char c;
|
||||||
|
|
||||||
|
if (type == error_mark_node)
|
||||||
|
return;
|
||||||
|
|
||||||
if (TYPE_READONLY (type))
|
if (TYPE_READONLY (type))
|
||||||
obstack_1grow (&util_obstack, 'r');
|
obstack_1grow (&util_obstack, 'r');
|
||||||
|
|
||||||
@ -8231,6 +8234,13 @@ static void
|
|||||||
objc_push_parm (tree parm)
|
objc_push_parm (tree parm)
|
||||||
{
|
{
|
||||||
bool relayout_needed = false;
|
bool relayout_needed = false;
|
||||||
|
|
||||||
|
if (TREE_TYPE (parm) == error_mark_node)
|
||||||
|
{
|
||||||
|
objc_parmlist = chainon (objc_parmlist, parm);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
/* Decay arrays and functions into pointers. */
|
/* Decay arrays and functions into pointers. */
|
||||||
if (TREE_CODE (TREE_TYPE (parm)) == ARRAY_TYPE)
|
if (TREE_CODE (TREE_TYPE (parm)) == ARRAY_TYPE)
|
||||||
{
|
{
|
||||||
|
@ -1,3 +1,8 @@
|
|||||||
|
2008-03-25 Andrew Pinski <pinskia@gmail.com>
|
||||||
|
|
||||||
|
PR objc/29197
|
||||||
|
* objc.dg/method-20.m: New testcase.
|
||||||
|
|
||||||
2008-03-25 Richard Sandiford <rsandifo@nildram.co.uk>
|
2008-03-25 Richard Sandiford <rsandifo@nildram.co.uk>
|
||||||
|
|
||||||
PR rtl-optimization/35232
|
PR rtl-optimization/35232
|
||||||
|
8
gcc/testsuite/objc.dg/method-20.m
Normal file
8
gcc/testsuite/objc.dg/method-20.m
Normal file
@ -0,0 +1,8 @@
|
|||||||
|
/* { dg-do compile } */
|
||||||
|
|
||||||
|
/* We used to crash after we found the type for int[m] was declared as invalid. */
|
||||||
|
/* PR objc/29197 */
|
||||||
|
|
||||||
|
@ implementation NGActiveSocket
|
||||||
|
+ (void) socketPair:(int[m]) _pair {} /* { dg-error "" } */
|
||||||
|
@end
|
Loading…
Reference in New Issue
Block a user