[Bug c++/79005] Use of a captured variable within nested generic lambdas provokes internal compiler error.

2018-02-27 Thread lesliezhai at llvm dot org.cn
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=79005

Leslie Zhai  changed:

   What|Removed |Added

 CC||lesliezhai at llvm dot org.cn

--- Comment #7 from Leslie Zhai  ---
(In reply to Paolo Carlini from comment #6)
> Fixed in trunk.

Hi Paolo,

Could you please show me which commit fixed the issue in trunk? gcc 5/6/7
branches are still able to reproduce the issue.

Regards,
Leslie Zhai

[Bug c++/79005] Use of a captured variable within nested generic lambdas provokes internal compiler error.

2017-10-02 Thread paolo.carlini at oracle dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=79005

Paolo Carlini  changed:

   What|Removed |Added

 Status|NEW |RESOLVED
 CC|mmccutcheon at nuvucameras dot com |
 Blocks||54367
 Resolution|--- |FIXED
   Target Milestone|--- |8.0

--- Comment #6 from Paolo Carlini  ---
Fixed in trunk.


Referenced Bugs:

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=54367
[Bug 54367] [meta-bug] lambda expressions

[Bug c++/79005] Use of a captured variable within nested generic lambdas provokes internal compiler error.

2017-10-02 Thread paolo at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=79005

--- Comment #5 from paolo at gcc dot gnu.org  ---
Author: paolo
Date: Mon Oct  2 21:44:55 2017
New Revision: 253368

URL: https://gcc.gnu.org/viewcvs?rev=253368=gcc=rev
Log:
2017-10-02  Paolo Carlini  

PR c++/79005
* g++.dg/cpp1y/lambda-generic-79005.C: New.

Added:
trunk/gcc/testsuite/g++.dg/cpp1y/lambda-generic-79005.C
Modified:
trunk/gcc/testsuite/ChangeLog

[Bug c++/79005] Use of a captured variable within nested generic lambdas provokes internal compiler error.

2017-01-09 Thread rguenth at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=79005

Richard Biener  changed:

   What|Removed |Added

   Keywords||ice-on-valid-code
 Status|UNCONFIRMED |NEW
   Last reconfirmed||2017-01-09
 Ever confirmed|0   |1
  Known to fail||6.2.0, 7.0

--- Comment #4 from Richard Biener  ---
Confirmed.  clang accepts the code.  gcc 4.8 rejects it (incomplete support for
auto in lambdas).

[Bug c++/79005] Use of a captured variable within nested generic lambdas provokes internal compiler error.

2017-01-05 Thread mmccutcheon at nuvucameras dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=79005

--- Comment #3 from M. McCutcheon  ---
Sorry, forgot to include the actual error message, though it doesn't seem very
illuminating :

auto-lambda_sub-capture.cpp: In lambda function:
auto-lambda_sub-capture.cpp:28:8: internal compiler error: Segmentation fault
result = b * c; // Provokes internal compiler error
^
Please submit a full bug report,
with preprocessed source if appropriate.
See  for instructions.
Preprocessed source stored into /tmp/cc5qcmOS.out file, please attach this to
your bug report.


[Bug c++/79005] Use of a captured variable within nested generic lambdas provokes internal compiler error.

2017-01-05 Thread mmccutcheon at nuvucameras dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=79005

--- Comment #2 from M. McCutcheon  ---
Created attachment 40469
  --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=40469=edit
Preprocessed source as requested by the error message

[Bug c++/79005] Use of a captured variable within nested generic lambdas provokes internal compiler error.

2017-01-05 Thread mmccutcheon at nuvucameras dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=79005

--- Comment #1 from M. McCutcheon  ---
The following code provokes an internal compiler error with :
g++ -save-temps -Wall -Wextra -std=c++14 

int main()
{
  auto glambda = [] (auto a)
  {
const int c = a;
auto cglambda = [&] ( auto b )
{ 
  double result;
  result = b * a;
  result = b * c; // Provokes internal compiler error
  return result;
};
cglambda ( 1 );
a = c;
  };

  glambda( 1 );

  return 0;
}

The specifics on the GCC version used are posted at the end of this comment but
the same code generates a similar error on Coliru with GCC 6.3.0

There seem to be similarities with Bug 69977.


--
Using built-in specs.
COLLECT_GCC=g++
COLLECT_LTO_WRAPPER=/usr/lib/gcc/x86_64-linux-gnu/4.9/lto-wrapper
Target: x86_64-linux-gnu
Configured with: ../src/configure -v --with-pkgversion='Ubuntu
4.9.4-2ubuntu1~12.04' --with-bugurl=file:///usr/share/doc/gcc-4.9/README.Bugs
--enable-languages=c,c++,java,go,d,fortran,objc,obj-c++ --prefix=/usr
--program-suffix=-4.9 --enable-shared --enable-linker-build-id
--libexecdir=/usr/lib --without-included-gettext --enable-threads=posix
--with-gxx-include-dir=/usr/include/c++/4.9 --libdir=/usr/lib --enable-nls
--with-sysroot=/ --enable-clocale=gnu --enable-libstdcxx-debug
--enable-libstdcxx-time=yes --enable-gnu-unique-object --disable-vtable-verify
--enable-plugin --with-system-zlib --disable-browser-plugin
--enable-java-awt=gtk --enable-gtk-cairo
--with-java-home=/usr/lib/jvm/java-1.5.0-gcj-4.9-amd64/jre --enable-java-home
--with-jvm-root-dir=/usr/lib/jvm/java-1.5.0-gcj-4.9-amd64
--with-jvm-jar-dir=/usr/lib/jvm-exports/java-1.5.0-gcj-4.9-amd64
--with-arch-directory=amd64 --with-ecj-jar=/usr/share/java/eclipse-ecj.jar
--enable-objc-gc --enable-multiarch --disable-werror --with-arch-32=i686
--with-abi=m64 --with-multilib-list=m32,m64 --enable-multilib
--with-tune=generic --enable-checking=release --build=x86_64-linux-gnu
--host=x86_64-linux-gnu --target=x86_64-linux-gnu
Thread model: posix
gcc version 4.9.4 (Ubuntu 4.9.4-2ubuntu1~12.04)