http://gcc.gnu.org/bugzilla/show_bug.cgi?id=52942
--- Comment #10 from Jonathan Wakely <redi at gcc dot gnu.org> 2012-04-12 10:04:51 UTC --- where else is _Select1st used? Does it need argument_type and result_type defined? It doesn't matter if they come from unary_function, but it might matter that they're defined, and if they need to be there then the bug will still exist