touch-packages team mailing list archive
-
touch-packages team
-
Mailing list archive
-
Message #09769
[Bug 1338254] Re: internal error on lambda as argument
Launchpad has imported 1 comments from the remote bug at
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=62155.
If you reply to an imported comment from within Launchpad, your comment
will be sent to the remote bug automatically. Read more about
Launchpad's inter-bugtracker facilities at
https://help.launchpad.net/InterBugTracking.
------------------------------------------------------------------------
On 2014-08-15T10:00:28+00:00 Doko-v wrote:
works on the trunk, fails on the 4.8 and 4.9 branches:
$ cat test.cc
template <typename T> struct S {
T i{[this] {}};
};
S<int> s;
$ /usr/lib/gcc-snapshot/bin/g++ -std=c++11 -c test.cc
test.cc:5:8: error: cannot convert '<brace-enclosed initializer list>' to 'int' in initialization
S<int> s;
^
test.cc: In constructor 'constexpr S<int>::S()':
test.cc:1:30: error: cannot convert '<brace-enclosed initializer list>' to 'int' in initialization
template <typename T> struct S {
^
test.cc: At global scope:
test.cc:5:8: note: synthesized method 'constexpr S<int>::S()' first required here
S<int> s;
^
$ g++ -std=c++11 -c test.cc
test.cc: In instantiation of 'struct S<int>::<lambda()>':
test.cc:1:30: required from here
test.cc:2:8: internal compiler error: in tsubst_copy, at cp/pt.c:12544
T i{[this] {}};
^
Please submit a full bug report,
with preprocessed source if appropriate.
Reply at:
https://bugs.launchpad.net/ubuntu/+source/gcc-4.8/+bug/1338254/comments/3
** Changed in: gcc
Status: Unknown => New
** Changed in: gcc
Importance: Unknown => Medium
--
You received this bug notification because you are a member of Ubuntu
Touch seeded packages, which is subscribed to gcc-4.8 in Ubuntu.
https://bugs.launchpad.net/bugs/1338254
Title:
internal error on lambda as argument
Status in The GNU Compiler Collection:
New
Status in “gcc-4.8” package in Ubuntu:
Confirmed
Status in “gcc-4.9” package in Ubuntu:
Confirmed
Status in “gcc-snapshot” package in Ubuntu:
Fix Released
Bug description:
1) The release of Ubuntu I am using:
$ lsb_release -rd
Description: Ubuntu 14.04 LTS
Release: 14.04
2) The package version:
$ apt-cache policy g++
g++:
Installed: 4:4.8.2-1ubuntu6
Candidate: 4:4.8.2-1ubuntu6
Version table:
*** 4:4.8.2-1ubuntu6 0
500 http://ch.archive.ubuntu.com/ubuntu/ trusty/main amd64 Packages
100 /var/lib/dpkg/status
3) What I expected to happen:
I expected the source file "test.cc" to compile correctly, using the
compiler command:
g++ -std=c++1y test.cc
4) What happened instead:
Compiler output:
test.cc: In instantiation of ‘struct S<int>::__lambda0’:
test.cc:15:8: required from here
test.cc:18:8: internal compiler error: in tsubst_copy, at cp/pt.c:12125
B b{[this]() { foo(); }};
^
Please submit a full bug report,
with preprocessed source if appropriate.
See <file:///usr/share/doc/gcc-4.8/README.Bugs> for instructions.
Preprocessed source stored into /tmp/ccgECJVP.out file, please attach this to your bugreport.
To manage notifications about this bug go to:
https://bugs.launchpad.net/gcc/+bug/1338254/+subscriptions