summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--binutils/ChangeLog5
-rw-r--r--binutils/NEWS2
-rw-r--r--binutils/doc/binutils.texi8
-rw-r--r--include/ChangeLog5
-rw-r--r--include/demangle.h2
5 files changed, 16 insertions, 6 deletions
diff --git a/binutils/ChangeLog b/binutils/ChangeLog
index a5796a8cf90..a1fce1adc58 100644
--- a/binutils/ChangeLog
+++ b/binutils/ChangeLog
@@ -1,3 +1,8 @@
+2018-12-11 Nick Clifton <nickc@redhat.com>
+
+ * NEWS: Note that recursion limit has increased to 2048.
+ * doc/binutils.texi: Likewise.
+
2018-12-08 Alan Modra <amodra@gmail.com>
* strings.c (unget_part_char): New function.
diff --git a/binutils/NEWS b/binutils/NEWS
index ce9253411ac..6afa19db809 100644
--- a/binutils/NEWS
+++ b/binutils/NEWS
@@ -4,7 +4,7 @@
maximum amount of recursion that is allowed whilst demangling strings.
The value for this limit is defined by the DEMANGLE_RECRUSE_LIMIT
constant declared in the include/demangle.h header file. At the time
- of writing this constant has the value of 1024.
+ of writing this constant has the value of 2048.
The --no-recurse-limit option can be used to remove the limit, restoring
the behaviour of earlier versions of these tools. This may be needed in
diff --git a/binutils/doc/binutils.texi b/binutils/doc/binutils.texi
index 7efda864830..34947d97ccb 100644
--- a/binutils/doc/binutils.texi
+++ b/binutils/doc/binutils.texi
@@ -950,7 +950,7 @@ whilst demangling strings. Since the name mangling formats allow for
an inifinite level of recursion it is possible to create strings whose
decoding will exhaust the amount of stack space available on the host
machine, triggering a memory fault. The limit tries to prevent this
-from happening by restricting recursion to 1024 levels of nesting.
+from happening by restricting recursion to 2048 levels of nesting.
The default is for this limit to be enabled, but disabling it may be
necessary in order to demangle truly complicated names. Note however
@@ -2202,7 +2202,7 @@ whilst demangling strings. Since the name mangling formats allow for
an inifinite level of recursion it is possible to create strings whose
decoding will exhaust the amount of stack space available on the host
machine, triggering a memory fault. The limit tries to prevent this
-from happening by restricting recursion to 1024 levels of nesting.
+from happening by restricting recursion to 2048 levels of nesting.
The default is for this limit to be enabled, but disabling it may be
necessary in order to demangle truly complicated names. Note however
@@ -3555,7 +3555,7 @@ whilst demangling strings. Since the name mangling formats allow for
an inifinite level of recursion it is possible to create strings whose
decoding will exhaust the amount of stack space available on the host
machine, triggering a memory fault. The limit tries to prevent this
-from happening by restricting recursion to 1024 levels of nesting.
+from happening by restricting recursion to 2048 levels of nesting.
The default is for this limit to be enabled, but disabling it may be
necessary in order to demangle truly complicated names. Note however
@@ -3778,7 +3778,7 @@ whilst demangling strings. Since the name mangling formats allow for
an inifinite level of recursion it is possible to create strings whose
decoding will exhaust the amount of stack space available on the host
machine, triggering a memory fault. The limit tries to prevent this
-from happening by restricting recursion to 1024 levels of nesting.
+from happening by restricting recursion to 2048 levels of nesting.
The default is for this limit to be enabled, but disabling it may be
necessary in order to demangle truly complicated names. Note however
diff --git a/include/ChangeLog b/include/ChangeLog
index 7cae69810ac..6ac2dd13e65 100644
--- a/include/ChangeLog
+++ b/include/ChangeLog
@@ -1,3 +1,8 @@
+2018-12-11 Nick Clifton <nickc@redhat.com>
+
+ PR 88409
+ * demangle.h (DEMANGLE_RECURSION_LIMIT): Increase to 2048.
+
2018-12-07 H.J. Lu <hongjiu.lu@intel.com>
* bfdlink.h (bfd_link_info): Add has_map_file.
diff --git a/include/demangle.h b/include/demangle.h
index 1e67fe2fb34..fadf7082c05 100644
--- a/include/demangle.h
+++ b/include/demangle.h
@@ -77,7 +77,7 @@ extern "C" {
/* If DMGL_NO_RECURSE_LIMIT is not enabled, then this is the value used as
the maximum depth of recursion allowed. It should be enough for any
real-world mangled name. */
-#define DEMANGLE_RECURSION_LIMIT 1024
+#define DEMANGLE_RECURSION_LIMIT 2048
/* Enumeration of possible demangling styles.