MathGroup Archive 2001

[Date Index] [Thread Index] [Author Index]

Search the Archive

Re: Infinite loop while generating gcc.1

  • To: mathgroup at smc.vnet.net
  • Subject: [mg26668] Re: Infinite loop while generating gcc.1
  • From: "Joseph S. Myers" <jsm28 at cam.ac.uk>
  • Date: Wed, 17 Jan 2001 00:47:21 -0500 (EST)
  • Sender: owner-wri-mathgroup at wolfram.com

On 14 Jan 2001, Russ Allbery wrote:

> Try changing this line to:
>
>     1 while s/B<((?:[^<>]|I<[^<>]*>)*)R<([^>]*)>/B<$1>${2}B</g;
>
> and see if that works any better?  This just removes one * from inside the
> parens in a way that should reduce the backtracking to linear rather than
> exponential.

This fixes the problem.  OK to commit the following?

2001-01-15  Joseph S. Myers  <jsm28 at cam.ac.uk>

	* texi2pod.pl: Fix regular expression for @r to avoid exponential
	recursion.  From Russ Allbery <rra at stanford.edu>.  Remove perl
	version check.

2001-01-15  Joseph S. Myers  <jsm28 at cam.ac.uk>

	* configure.in, configure: Revert previous patch requiring perl
	5.6.0.

Index: texi2pod.pl
===================================================================
RCS file: /cvs/gcc/gcc/contrib/texi2pod.pl,v
retrieving revision 1.9
diff -u -r1.9 texi2pod.pl
--- texi2pod.pl	2001/01/14 21:47:14	1.9
+++ texi2pod.pl	2001/01/15 07:49:52
@@ -4,8 +4,6 @@
 # markup to Perl POD format.  It's intended to be used to extract
 # something suitable for a manpage from a Texinfo document.

-use v5.6.0;
-
 $output = 0;
 $skipping = 0;
 %sects = ();
@@ -262,7 +260,7 @@
     s/\@(?:dmn|math)\{([^\}]*)\}/$1/g;

     # Handle @r inside bold.
-    1 while s/B<((?:[^<>]*|I<[^<>*]*>)*)R<([^>]*)>/B<$1>${2}B</g;
+    1 while s/B<((?:[^<>]|I<[^<>]*>)*)R<([^>]*)>/B<$1>${2}B</g;

     # Cross references are thrown away, as are @noindent and @refill.
     # (@noindent is impossible in .pod, and @refill is unnecessary.)
Index: configure.in
===================================================================
RCS file: /cvs/gcc/gcc/gcc/configure.in,v
retrieving revision 1.477
retrieving revision 1.476
diff -u -r1.477 -r1.476
--- configure.in	2001/01/14 21:47:18	1.477
+++ configure.in	2001/01/13 20:36:56	1.476
@@ -471,9 +471,9 @@
   BUILD_INFO=info		AC_SUBST(BUILD_INFO)
 fi

-# Are perl and pod2man recent enough to regenerate manpages?
-AC_MSG_CHECKING([for recent perl and Pod::Man])
-if perl -e 'use v5.6.0; use 1.10 Pod::Man' >/dev/null 2>&1; then
+# Is pod2man recent enough to regenerate manpages?
+AC_MSG_CHECKING([for recent Pod::Man])
+if perl -e 'use 1.10 Pod::Man' >/dev/null 2>&1; then
   AC_MSG_RESULT(yes)
   GENERATED_MANPAGES=generated-manpages		AC_SUBST(GENERATED_MANPAGES)
 else

-- 
Joseph S. Myers
jsm28 at cam.ac.uk



  • Prev by Date: Palette to Highlight and Substitute Same Subexpressions?
  • Next by Date: Re: Name of a list
  • Previous by thread: Palette to Highlight and Substitute Same Subexpressions?
  • Next by thread: *** nonlinear system of ODE + Runge Kutta ?!!!! ***