aboutsummaryrefslogtreecommitdiff
path: root/gcc/cp/lambda.c
diff options
context:
space:
mode:
authorNathan Sidwell <nathan@acm.org>2017-05-08 17:54:55 +0000
committerNathan Sidwell <nathan@gcc.gnu.org>2017-05-08 17:54:55 +0000
commitd16d5eac2a0132adcd9e88ae288bedd03abfc513 (patch)
tree28f4f3f132d35b2fc0ad9b9ec589c8e81c8e4957 /gcc/cp/lambda.c
parent29eb9a442b145c3b637e7b41000e51148969c989 (diff)
downloadgcc-d16d5eac2a0132adcd9e88ae288bedd03abfc513.zip
gcc-d16d5eac2a0132adcd9e88ae288bedd03abfc513.tar.gz
gcc-d16d5eac2a0132adcd9e88ae288bedd03abfc513.tar.bz2
name-lookup.h (pushdecl_with_scope): Replace with ...
* name-lookup.h (pushdecl_with_scope): Replace with ... (pushdecl_outermost_localscope): ... this. * name-lookup.c (pushdecl_with_scope): Replace with ... (pushdecl_outermost_localscope): ... this. (pushdecl_namespace_level): Adjust. * decl.c (cp_make_fname_decl): Use pushdecl_outermost_localscope. * lambda.c (insert_capture_proxy): Likewise. From-SVN: r247752
Diffstat (limited to 'gcc/cp/lambda.c')
-rw-r--r--gcc/cp/lambda.c15
1 files changed, 2 insertions, 13 deletions
diff --git a/gcc/cp/lambda.c b/gcc/cp/lambda.c
index 46ab30f..5061597 100644
--- a/gcc/cp/lambda.c
+++ b/gcc/cp/lambda.c
@@ -295,24 +295,13 @@ is_normal_capture_proxy (tree decl)
void
insert_capture_proxy (tree var)
{
- cp_binding_level *b;
- tree stmt_list;
-
/* Put the capture proxy in the extra body block so that it won't clash
with a later local variable. */
- b = current_binding_level;
- for (;;)
- {
- cp_binding_level *n = b->level_chain;
- if (n->kind == sk_function_parms)
- break;
- b = n;
- }
- pushdecl_with_scope (var, b, false);
+ pushdecl_outermost_localscope (var);
/* And put a DECL_EXPR in the STATEMENT_LIST for the same block. */
var = build_stmt (DECL_SOURCE_LOCATION (var), DECL_EXPR, var);
- stmt_list = (*stmt_list_stack)[1];
+ tree stmt_list = (*stmt_list_stack)[1];
gcc_assert (stmt_list);
append_to_statement_list_force (var, &stmt_list);
}