This is seen on 32b hosts with a 64b multilib, and is an ICE when
the build has checking enabled. The fix is to exit the routine
early if the sender or receiver are already error_mark_node.
gcc/objc/ChangeLog:
* objc-next-runtime-abi-02.cc
(build_v2_objc_method_fixup_call): Early exit for cases
where the sender or receiver are known to be in error.
Signed-off-by: Iain Sandoe <iain@sandoe.co.uk>
rcv_p = (super_flag ? objc_super_type : objc_object_type);
lookup_object = build_c_cast (input_location, rcv_p, lookup_object);
+ if (sender == error_mark_node || lookup_object == error_mark_node)
+ return error_mark_node;
/* Use SAVE_EXPR to avoid evaluating the receiver twice. */
lookup_object = save_expr (lookup_object);