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

Reply via email to