Looking for something else, I noticed that the majority of references in lto-streamer.h were to symtab_node, whereas there were two left to symtab_node.
This patch, tested for weeks on i386-unknown-freebsd10.0, makes things consistent. Applied as obvious. Gerald 2014-08-10 Gerald Pfeifer <ger...@pfeifer.com> * lto-streamer.h (struct output_block::symbol): Change from struct symtab_node to plain symtab_node. (referenced_from_this_partition_p): Change first parameter from struct symtab_node to plain symtab_node. Index: lto-streamer.h =================================================================== --- lto-streamer.h (revision 213804) +++ lto-streamer.h (working copy) @@ -636,7 +636,7 @@ /* The current symbol that we are currently serializing. Null if we are serializing something else. */ - struct symtab_node *symbol; + symtab_node *symbol; /* These are the last file and line that were seen in the stream. If the current node differs from these, it needs to insert @@ -826,7 +826,7 @@ lto_symtab_encoder_t); bool reachable_from_other_partition_p (struct cgraph_node *, lto_symtab_encoder_t); -bool referenced_from_this_partition_p (struct symtab_node *, +bool referenced_from_this_partition_p (symtab_node *, lto_symtab_encoder_t); bool reachable_from_this_partition_p (struct cgraph_node *, lto_symtab_encoder_t);