This is the mail archive of the binutils-cvs@sourceware.org mailing list for the binutils project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[binutils-gdb] Fix a failure in the libiberty testsuite by increasing the recursion limit to 2048.


https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=69799d67e8872dcd3feee81ed2ff0fc47beb52d7

commit 69799d67e8872dcd3feee81ed2ff0fc47beb52d7
Author: Nick Clifton <nickc@redhat.com>
Date:   Tue Dec 11 12:01:15 2018 +0000

    Fix a failure in the libiberty testsuite by increasing the recursion limit to 2048.
    
    	PR 88409
    include	* demangle.h (DEMANGLE_RECURSION_LIMIT): Increase to 2048.
    
    binutils* NEWS: Note that recursion limit has increased to 2048.
    	* doc/binutils.texi: Likewise.

Diff:
---
 binutils/ChangeLog         | 5 +++++
 binutils/NEWS              | 2 +-
 binutils/doc/binutils.texi | 8 ++++----
 include/ChangeLog          | 5 +++++
 include/demangle.h         | 2 +-
 5 files changed, 16 insertions(+), 6 deletions(-)

diff --git a/binutils/ChangeLog b/binutils/ChangeLog
index a5796a8..a1fce1a 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 ce92534..6afa19d 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 7efda86..34947d9 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 7cae698..6ac2dd1 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 1e67fe2..fadf708 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.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]