From 144d302eeb44548506be82089afdf9b9da21f315 Mon Sep 17 00:00:00 2001 From: Paolo Carlini Date: Mon, 2 Oct 2017 09:03:32 +0000 Subject: [PATCH] re PR c++/59991 (Recursive lambda capture in C++1y constexpr function template causes internal compiler error) 2017-10-02 Paolo Carlini PR c++/59991 * g++.dg/cpp0x/lambda/lambda-ice23.C: New. From-SVN: r253339 --- gcc/testsuite/ChangeLog | 5 +++++ gcc/testsuite/g++.dg/cpp0x/lambda/lambda-ice23.C | 13 +++++++++++++ 2 files changed, 18 insertions(+) create mode 100644 gcc/testsuite/g++.dg/cpp0x/lambda/lambda-ice23.C diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index cab94f9..bd060df 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,8 @@ +2017-10-02 Paolo Carlini + + PR c++/59991 + * g++.dg/cpp0x/lambda/lambda-ice23.C: New. + 2017-10-02 Tom de Vries * gcc.c-torture/compile/pr82337.c: Add diff --git a/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-ice23.C b/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-ice23.C new file mode 100644 index 0000000..b811ad2 --- /dev/null +++ b/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-ice23.C @@ -0,0 +1,13 @@ +// PR c++/59991 +// { dg-do compile { target c++11 } } + +template +constexpr int r(T x) { + auto f = [r,x]() { return r(x); }; // { dg-error "incomplete type" } + return 0; +} + +int main() +{ + r(0); +} -- 2.7.4