summaryrefslogtreecommitdiff
path: root/libiberty/cp-demangle.h
diff options
context:
space:
mode:
authorIain Buclaw <ibuclaw@gdcproject.org>2017-06-25 11:39:05 +0200
committerIain Buclaw <ibuclaw@gdcproject.org>2017-06-25 11:39:05 +0200
commit2d3392bd42e16b5c8894c357f250dbde245e96fe (patch)
treed3bc528e7cb996034a43a478c50a509e41c6bad5 /libiberty/cp-demangle.h
parent5cc4ca837deac7dc962d8a3741aa120c50ab41da (diff)
Sync libiberty with upstream GCC.
libiberty/ChangeLog: PR demangler/80513 * cp-demangle.c (d_number): Check for overflow. * cplus-dem.c (consume_count): Fix overflow check. (gnu_special): Check for underscore after thunk delta. * testsuite/demangle-expected: Add tests for overflows and invalid characters in thunks. * cp-demangle.c (MAX_RECURSION_COUNT): New constant. (struct d_print_info): Add recursion field. (d_print_init): Initialize recursion. (d_print_comp): Check and update d_print_info recursion depth. * cp-demangle.c (d_substitution): Return NULL if d_add_substitution fails. * cp-demangle.h (struct d_info): Remove did_subs field. * cp-demangle.c (struct d_info_checkpoint): Likewise. (d_template_param): Don't update did_subs. (d_substitution): Likewise. (d_checkpoint): Don't assign did_subs. (d_backtrack): Likewise. (cplus_demangle_init_info): Don't initialize did_subs.
Diffstat (limited to 'libiberty/cp-demangle.h')
-rw-r--r--libiberty/cp-demangle.h4
1 files changed, 0 insertions, 4 deletions
diff --git a/libiberty/cp-demangle.h b/libiberty/cp-demangle.h
index a2657755f1..d4a4ab604d 100644
--- a/libiberty/cp-demangle.h
+++ b/libiberty/cp-demangle.h
@@ -111,10 +111,6 @@ struct d_info
int next_sub;
/* The number of available entries in the subs array. */
int num_subs;
- /* The number of substitutions which we actually made from the subs
- array, plus the number of template parameter references we
- saw. */
- int did_subs;
/* The last name we saw, for constructors and destructors. */
struct demangle_component *last_name;
/* A running total of the length of large expansions from the