// { dg-do assemble } // Gives ICE on EGCS release branch as of 98/06/08 on i686-pc-linux-gnulibc1) // From: Klaus-Georg Adams <Klaus-Georg.Adams@chemie.uni-karlsruhe.de> // Message-Id: <199806081358.PAA02505@achibm5.chemie.uni-karlsruhe.de> #include <list> #include <functional> #include <algorithm> #include <cassert> int main() { std::list<int> l; l.push_back(1); l.push_back(2); std::list<int>::iterator it = std::find_if( l.begin(), l.end(), // This is a typo, it should be bind2nd, but an // ICE is not a very helpful diagnostic! std::binder2nd( std::equal_to<int>(), 2 ) ); // { dg-error "" } assert( *(it) == 2 ); }