[tree-ssa] fix some alpha objc failures

Richard Henderson rth@twiddle.net
Mon Nov 24 19:15:00 GMT 2003


Regressions from the addition of the type checker.  Not sure why
these don't show up on i686 and do on alpha.

Tested with check-objc on alphaev67-linux.


r~


        * objc/objc-act.c (build_protocol_expr): Use convert instead of
        smashing TREE_TYPE.

Index: objc-act.c
===================================================================
RCS file: /cvs/gcc/gcc/gcc/objc/objc-act.c,v
retrieving revision 1.137.2.28
diff -c -p -d -r1.137.2.28 objc-act.c
*** objc-act.c	19 Oct 2003 00:00:57 -0000	1.137.2.28
--- objc-act.c	24 Nov 2003 18:51:34 -0000
*************** build_protocol_expr (tree protoname)
*** 5992,5998 ****
  
    expr = build_unary_op (ADDR_EXPR, PROTOCOL_FORWARD_DECL (p), 0);
  
!   TREE_TYPE (expr) = protocol_type;
  
    /* The @protocol() expression is being compiled into a pointer to a
       statically allocated instance of the Protocol class.  To become
--- 5992,6000 ----
  
    expr = build_unary_op (ADDR_EXPR, PROTOCOL_FORWARD_DECL (p), 0);
  
!   /* ??? Ideally we'd build the reference with protocol_type directly,
!      if we have it, rather than converting it here.  */
!   expr = convert (protocol_type, expr);
  
    /* The @protocol() expression is being compiled into a pointer to a
       statically allocated instance of the Protocol class.  To become



More information about the Gcc-patches mailing list