================
@@ -8,3 +8,28 @@ template <int Unroll> void foo() {
#pragma GCC unroll Unroll
for (int i = 0; i < Unroll; ++i);
}
+
+struct val {
+ constexpr operator int() const { return 1; }
+};
+
+// generic lambda (using double template instantiation)
+
+template<typename T>
+void use(T t) {
+ auto lam = [](auto N) {
----------------
erichkeane wrote:
*sigh* This lambda is actually a really bad example here, since the standard
doesnt' allow us to do ANY instantiation here until it is non dependent. ONE
day we will fix that, but we should come up with an additional test here where
this is problematic (perhaps partial specializations? or template member
function in a class tempalte?).
https://github.com/llvm/llvm-project/pull/172289
_______________________________________________
cfe-commits mailing list
[email protected]
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits