apparently fixed in gcc-snapshot: $ /usr/lib/gcc-snapshot/bin/g++ -std=c++0x t.cpp t.cpp: In instantiation of 'operator|(F1, F2) [with F1 = <lambda(float)>::<lambda(long long unsigned int)>; F2 = <lambda()>]::<lambda(long long unsigned int)>': t.cpp:2:75: required from 'struct operator|(F1, F2) [with F1 = <lambda(float)>::<lambda(long long unsigned int)>; F2 = <lambda()>]::<lambda(long long unsigned int)>' t.cpp:2:83: required from 'F2 operator|(F1, F2) [with F1 = <lambda(float)>::<lambda(long long unsigned int)>; F2 = <lambda()>]' t.cpp:16:26: required from here t.cpp:2:83: error: no match for call to '(const<lambda()>) (float)' t.cpp:9:15: note: candidates are: t.cpp:2:83: note: <lambda()>::<lambda(float)> (*)() <conversion> t.cpp:2:83: note: candidate expects 1 argument, 2 provided t.cpp:9:17: note: <lambda()> t.cpp:9:17: note: candidate expects 0 arguments, 1 provided t.cpp:2:83: error: return-statement with a value, in function returning 'void' [-fpermissive] t.cpp: In instantiation of 'F2 operator|(F1, F2) [with F1 = <lambda(float)>::<lambda(long long unsigned int)>; F2 = <lambda()>]': t.cpp:16:26: required from here t.cpp:2:83: error: could not convert '{f2, f1}' from 'operator|(F1, F2) [with F1 = <lambda(float)>::<lambda(long long unsigned int)>; F2 = <lambda()>]::<lambda(long long unsigned int)>' to '<lambda()>'
** Changed in: gcc-4.6 (Ubuntu) Importance: Medium => Low ** Changed in: gcc-4.6 (Ubuntu) Status: New => Confirmed -- You received this bug notification because you are a member of Ubuntu Bugs, which is subscribed to Ubuntu. https://bugs.launchpad.net/bugs/877712 Title: cc1plus crashed with SIGSEGV in dependent_type_p() To manage notifications about this bug go to: https://bugs.launchpad.net/ubuntu/+source/gcc-4.6/+bug/877712/+subscriptions -- ubuntu-bugs mailing list ubuntu-bugs@lists.ubuntu.com https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs