Perl V3 bug: repeated tests

Larry Wall lwall at jpl-devvax.JPL.NASA.GOV
Fri Oct 27 11:44:07 AEST 1989


In article <1452 at nosc.NOSC.MIL> dennis at nosc.mil (Dennis Cottel) writes:
: There's a bug in Perl3.0, related, I think, to the new optimization
: for repeated tests on the same variable.  Things quit working in
: mysterious ways if you have a construction like:
: 
: 	if ( $i = 1 ) {...}
: 	if ( $i = 2 ) {...}
: 	if ( $i = 3 ) {...}
: 	if ( $i = 4 ) {...}
: 	...
: 
: This breaks if you have 3 or more tests.  You can get around the
: problem by doing something like:
: 
: 	if ( $i = 1 ) {...}
: 	if ( $i = 2 ) {...}
: $kludge++;
: 	if ( $i = 3 ) {...}
: 	if ( $i = 4 ) {...}
: 	...
: 
: to avoid having more than 2 tests in a row.
: 
: I have reported this to Larry Wall (actually to Larry's mail handling
: program ;-).

This is fixed in my version.  Patch #1, coming out later tonight, will
correct this problem, among others.

How come this didn't show up in alpha, beta or gamma testing?  Life is
disgusting.  ('Course, so is the alternative.)

Larry Wall
lwall at jpl-devvax.jpl.nasa.gov



More information about the Comp.sources.bugs mailing list