Hi, this is really only based on successful testing and not much analyzis of the context but it seems that we don't need lazy node construction here. It would be nice not to have it after the big patch gets in. Bootstrapped and tested on x86_64-linux without any problems, tests on i686 in progress. Thanks, Martin 2011-04-06 Martin Jambor * objc-act.c (mark_referenced_methods): Call cgraph_get_node instead of cgraph_get_create_node and assert it does not returns NULL. Index: src/gcc/objc/objc-act.c =================================================================== --- src.orig/gcc/objc/objc-act.c +++ src/gcc/objc/objc-act.c @@ -4519,16 +4519,20 @@ mark_referenced_methods (void) chain = CLASS_CLS_METHODS (impent->imp_context); while (chain) { - cgraph_mark_needed_node ( - cgraph_get_create_node (METHOD_DEFINITION (chain))); + struct cgraph_node *node; + node = cgraph_get_node (METHOD_DEFINITION (chain)); + gcc_checking_assert (node); + cgraph_mark_needed_node (node); chain = DECL_CHAIN (chain); } chain = CLASS_NST_METHODS (impent->imp_context); while (chain) { - cgraph_mark_needed_node ( - cgraph_get_create_node (METHOD_DEFINITION (chain))); + struct cgraph_node *node; + node = cgraph_get_node (METHOD_DEFINITION (chain)); + gcc_checking_assert (node); + cgraph_mark_needed_node (node); chain = DECL_CHAIN (chain); } }