diff --git a/gcc/testsuite/g++.dg/cpp1y/lambda-generic-const5.C b/gcc/testsuite/g++.dg/cpp1y/lambda-generic-const5.C
new file mode 100644
index 0000000000000000000000000000000000000000..65e52ccd01f91516c929d147fbc563139634768f
--- /dev/null
+++ b/gcc/testsuite/g++.dg/cpp1y/lambda-generic-const5.C
@@ -0,0 +1,17 @@
+// PR c++/78840
+// { dg-do compile { target c++14 } }
+
+int global;
+
+void Bar (int);
+
+template<int I> void Foo () {
+  const int cst = global;
+  auto lam0 = [&]() -> void {
+    auto lam1 = [&]() -> void { cst; };
+    
+    Bar (cst);
+  };
+}
+
+template void Foo <0> ();