Small lambda instantiation tweak.
authorJason Merrill <jason@redhat.com>
Sat, 15 Dec 2018 22:10:18 +0000 (17:10 -0500)
committerJason Merrill <jason@gcc.gnu.org>
Sat, 15 Dec 2018 22:10:18 +0000 (17:10 -0500)
While looking at something else I noticed that we were passing 0 to the
"nonclass" parameter here; we might as well pass 1, since capture proxies
are always at block scope.

* pt.c (tsubst_expr) [DECL_EXPR]: Ignore class-scope bindings when
looking up a capture proxy.

From-SVN: r267176

gcc/cp/ChangeLog
gcc/cp/pt.c

index ee9e570687b8ae0e7bba5a2b837b0d6c817a87b7..9b8dae3c504409802be6947a20acf37cc510f960 100644 (file)
@@ -1,3 +1,8 @@
+2018-12-14  Jason Merrill  <jason@redhat.com>
+
+       * pt.c (tsubst_expr) [DECL_EXPR]: Ignore class-scope bindings when
+       looking up a capture proxy.
+
 2018-12-15  Paolo Carlini  <paolo.carlini@oracle.com>
 
        PR c++/84644
index 20f0d16efe107ebad7c57c22b7d38cd36e2c88ff..79eef12112fb7e704d23ea59f2eef3d84a5803b1 100644 (file)
@@ -16911,8 +16911,9 @@ tsubst_expr (tree t, tree args, tsubst_flags_t complain, tree in_decl,
            tree inst;
            if (!DECL_PACK_P (decl))
              {
-               inst = lookup_name_real (DECL_NAME (decl), 0, 0,
-                                        /*block_p=*/true, 0, LOOKUP_HIDDEN);
+               inst = lookup_name_real (DECL_NAME (decl), /*prefer_type*/0,
+                                        /*nonclass*/1, /*block_p=*/true,
+                                        /*ns_only*/0, LOOKUP_HIDDEN);
                gcc_assert (inst != decl && is_capture_proxy (inst));
              }
            else if (is_normal_capture_proxy (decl))