http://gcc.gnu.org/bugzilla/show_bug.cgi?id=49598
--- Comment #1 from Ed Smith-Rowland <3dw4rd at verizon dot net> 2011-06-30
20:43:39 UTC ---
Reduced testcase:
-----------------------------------------
int
main()
{
int i = 10;
int& ir = i;
[=] // [i, ir] explicit capture works.
{
i == ir;
}();
}
-----------------------------------------
With [=, ir] I get a warning:
lamb3.cpp:10:7: warning: explicit by-copy capture of ‘ir’ redundant with
by-copy capture default [enabled by default]
But it compiles.
With [=, i] I get the ICE.