e96d1d8c78
include * demangle.h (DMGL_NO_RECURSE_LIMIT): Define. (DEMANGLE_RECURSION_LIMIT): Define PR 87681 PR 87675 PR 87636 PR 87350 PR 87335 libiberty * cp-demangle.h (struct d_info): Add recursion_level field. * cp-demangle.c (d_function_type): Add recursion counter. If the recursion limit is reached and the check is not disabled, then return with a failure result. (cplus_demangle_init_info): Initialise the recursion_level field. (d_demangle_callback): If the recursion limit is enabled, check for a mangled string that is so long that there is not enough stack space for the local arrays. * cplus-dem.c (struct work): Add recursion_level field. (squangle_mop_up): Set the numb and numk fields to zero. (work_stuff_copy_to_from): Handle the case where a btypevec or ktypevec field is NULL. (demangle_nested_args): Add recursion counter. If the recursion limit is not disabled and reached, return with a failure result. From-SVN: r266886 |
||
---|---|---|
.. | ||
gdb | ||
ansidecl.h | ||
ChangeLog | ||
ChangeLog-9103 | ||
ChangeLog.jit | ||
COPYING | ||
COPYING3 | ||
demangle.h | ||
dwarf2.def | ||
dwarf2.h | ||
dyn-string.h | ||
environ.h | ||
fibheap.h | ||
filenames.h | ||
floatformat.h | ||
fnmatch.h | ||
gcc-c-fe.def | ||
gcc-c-interface.h | ||
gcc-cp-fe.def | ||
gcc-cp-interface.h | ||
gcc-interface.h | ||
getopt.h | ||
gomp-constants.h | ||
hashtab.h | ||
hsa.h | ||
leb128.h | ||
libiberty.h | ||
longlong.h | ||
lto-symtab.h | ||
md5.h | ||
objalloc.h | ||
obstack.h | ||
partition.h | ||
plugin-api.h | ||
safe-ctype.h | ||
sha1.h | ||
simple-object.h | ||
sort.h | ||
splay-tree.h | ||
symcat.h | ||
timeval-utils.h | ||
unique-ptr.h | ||
vtv-change-permission.h | ||
xregex2.h | ||
xregex.h | ||
xtensa-config.h |