diff options
author | Jason Merrill <jason@redhat.com> | 2013-04-15 15:25:30 +0000 |
---|---|---|
committer | Jason Merrill <jason@redhat.com> | 2013-04-15 15:25:30 +0000 |
commit | 57c304b6f662e6ce28a3ce1413b4726cae936f8a (patch) | |
tree | 32d85f3559062d9ab18f58a9253e7d2706e385dd /gcc/cp | |
parent | 775e7515764a4659a6b8624a6ee99f0081fe609b (diff) |
PR c++/56388
* semantics.c (insert_capture_proxy): Just use index 1 in the
stmt_list_stack.
git-svn-id: https://gcc.gnu.org/svn/gcc/branches/gcc-4_8-branch@197984 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/cp')
-rw-r--r-- | gcc/cp/ChangeLog | 6 | ||||
-rw-r--r-- | gcc/cp/semantics.c | 5 |
2 files changed, 8 insertions, 3 deletions
diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog index 9e391d9654b..6398db57ab1 100644 --- a/gcc/cp/ChangeLog +++ b/gcc/cp/ChangeLog @@ -1,3 +1,9 @@ +2013-04-15 Jason Merrill <jason@redhat.com> + + PR c++/56388 + * semantics.c (insert_capture_proxy): Just use index 1 in the + stmt_list_stack. + 2013-04-11 Jason Merrill <jason@redhat.com> PR c++/52748 diff --git a/gcc/cp/semantics.c b/gcc/cp/semantics.c index 20e2abdaf6b..91ee7c6a174 100644 --- a/gcc/cp/semantics.c +++ b/gcc/cp/semantics.c @@ -9203,13 +9203,12 @@ void insert_capture_proxy (tree var) { cp_binding_level *b; - int skip; 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 (skip = 0; ; ++skip) + for (;;) { cp_binding_level *n = b->level_chain; if (n->kind == sk_function_parms) @@ -9220,7 +9219,7 @@ insert_capture_proxy (tree 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)[stmt_list_stack->length () - 1 - skip]; + stmt_list = (*stmt_list_stack)[1]; gcc_assert (stmt_list); append_to_statement_list_force (var, &stmt_list); } |