PR c++/67411
* decl2.c (decl_maybe_constant_var_p): A proxy isn't constant.
From-SVN: r231862
+2015-12-20 Jason Merrill <jason@redhat.com>
+
+ PR c++/67411
+ * decl2.c (decl_maybe_constant_var_p): A proxy isn't constant.
+
2015-12-18 Patrick Palka <ppalka@gcc.gnu.org>
PR c++/68978
return false;
if (DECL_DECLARED_CONSTEXPR_P (decl))
return true;
+ if (DECL_VALUE_EXPR (decl))
+ /* A proxy isn't constant. */
+ return false;
return (CP_TYPE_CONST_NON_VOLATILE_P (type)
&& INTEGRAL_OR_ENUMERATION_TYPE_P (type));
}
--- /dev/null
+// PR c++/67411
+// { dg-do compile { target c++14 } }
+
+template <class T>
+void f()
+{
+ int i = 42;
+ [x = i] {
+ [&](auto) {
+ [=] { return x; }();
+ }(1);
+ }();
+}
+
+int main()
+{
+ f<int>();
+}