commit 19ec4361510b137bc60631193cd47e378fc1b314
Author: Jason Merrill <jason@redhat.com>
Date: Tue Feb 5 23:04:01 2013 -0500
PR c++/54122
* tree.c (lvalue_kind) [INDIRECT_REF]: Don't check for
METHOD_TYPE.
@@ -143,9 +143,7 @@ lvalue_kind (const_tree ref)
case ARRAY_REF:
case PARM_DECL:
case RESULT_DECL:
- if (TREE_CODE (TREE_TYPE (ref)) != METHOD_TYPE)
- return clk_ordinary;
- break;
+ return clk_ordinary;
/* A scope ref in a template, left as SCOPE_REF to support later
access checking. */
new file mode 100644
@@ -0,0 +1,11 @@
+// PR c++/54122
+// { dg-options -std=c++11 }
+
+enum E { F };
+
+template <typename A>
+struct C
+{
+ E e;
+ void f () { auto l = [&](void)->void { if (e == F) return; }; }
+};