Hi, this first patch continues with rafactoring of IPA infrastructure so that we will have C++ API. In the patch, I transformed many global functions to members of symtab_node and cgraph_node. Example: cgraph_remove_node (struct cgraph_node *node) -> cgraph_node::remove (void) symtab_unregister_node (symtab_node *node) -> symtab_node::unregister (void) The patch is being consulted with Honza and will iterate. We want to inform folk that we plan to do following changes. After the patch is applied, I would like to transform varpool_node and cgraph_edge in the following patch. Thank you for your comments, Martin