PATCH20.      "$var{$foo'bar}" didn't scan subscript correctly 
PATCH20.      "foo"x1024 now legal without space after x 
PATCH20.      &ctime didn't handle $[ != 0 
PATCH20.      &getcap eventually dumped core in bsdcurses 
PATCH20.      &shellwords looped on bad input, and used inefficient regular exprs 
PATCH20.      ($<,$>) = ... didn't work on some architectures 
PATCH20.      -e 'cmd' no longer fails silently if /tmp runs out of space 
PATCH20.      /^stuff/ wrongly assumed an implicit $* == 1 
PATCH20.      /x{0}/ was wrongly interpreted as /x{0,}/ 
PATCH20.      2. now eats the dot 
PATCH20.      <@ARGV> now notices @ARGV 
PATCH20.      @ in unpack failed too often 
PATCH20.      Configure growing-library-list bug fixed 
PATCH20.      Configure now allows optional continuation with files missing 
PATCH20.      OSF/1 support added 
PATCH20.      O_PIPE conflicted with Atari 
PATCH20.      PERLLIB now supports multiple directories 
PATCH20.      Perl now distinguishes overlapped copies from non-overlapped 
PATCH20.      SH files didn't work well with symbolic links 
PATCH20.      Tom's famous double-ended pipe opener, open2(), is now included 
PATCH20.      a splice on non-existent array elements could dump core 
PATCH20.      a2p was installed unexecutable 
PATCH20.      added ... as variant on .. 
PATCH20.      added Atari ST portability 
PATCH20.      added \W, \S and \D inside /[...]/ 
PATCH20.      added explicit time_t support 
PATCH20.      alternate config.h files upgraded 
PATCH20.      an EXPR may now start with a bareword 
PATCH20.      an eval block containing a null block or statement could dump core 
PATCH20.      an expression may now start with a bareword 
PATCH20.      bcopy() and memcpy() now tested for overlap safety 
PATCH20.      better support in chat2 for multiple children 
PATCH20.      big*.pl library files upgraded 
PATCH20.      clarified debugging output for literals and double-quoted strings 
PATCH20.      clarified that DATA may only be read from main script 
PATCH20.      config.H updated to reflect more recent config.h 
PATCH20.      couldn't require . files 
PATCH20.      cray didn't give enough memory to /bin/sh 
PATCH20.      dbmclose(%array) didn't work 
PATCH20.      debugger sometimes displayed wrong source line 
PATCH20.      delete could cause %array to give too low a count of buckets filled 
PATCH20.      deleted some minor memory leaks 
PATCH20.      disabled cpp test if cppstdin not yet installed 
PATCH20.      documented PERLLIB and PERLDB 
PATCH20.      documented limit on size of regexp 
PATCH20.      documented need for 1; at the end of a required file 
PATCH20.      documented that numbers may contain underline 
PATCH20.      end of file latch not reset on reopen of STDIN 
PATCH20.      eval "1 #comment" didn't work 
PATCH20.      find.pl got confused by unreadable directories 
PATCH20.      find2perl assumed . in PATH 
PATCH20.      find2perl didn't always stat at the right time 
PATCH20.      find2perl didn't output portable startup code 
PATCH20.      fixed confusion between a *var's real name and its effective name 
PATCH20.      fixed double debug break in foreach with implicit array assignment 
PATCH20.      fixed memory leak in doube-quote interpretation 
PATCH20.      fixed memory leak on system() for vfork() machines 
PATCH20.      fixed some memory leaks in splice 
PATCH20.      form feed for formats is now specifiable via $^L 
PATCH20.      function key support added to curses.mus 
PATCH20.      g pattern modifer sometimes returned extra values 
PATCH20.      get*by* routines now return something useful in a scalar context 
PATCH20.      h_errno now accessible via $? 
PATCH20.      hash tables now split only if the memory is available to do so 
PATCH20.      hints now auto selected on uname -s as well as uname -m 
PATCH20.      if {block} {block} didn't work any more 
PATCH20.      illegal lvalue message could be followed by core dump 
PATCH20.      in a2p, do {...} while ... was missing some reconstruction code 
PATCH20.      in a2p, getline should allow variable to be array element 
PATCH20.      in a2p, made RS="" translate to $/ = "\n\n" 
PATCH20.      in a2p, now allows [ to be backslashed in pattern 
PATCH20.      in a2p, now allows numbers of the form 2. 
PATCH20.      in a2p, now warns about spurious backslashes 
PATCH20.      in a2p, simplified the filehandle model 
PATCH20.      in some cases $` and $' didn't get set by match 
PATCH20.      installperl didn't warn on failed manpage installation 
PATCH20.      isascii() may now be supplied by a library routine 
PATCH20.      join() now pre-extends target string to avoid excessive copying 
PATCH20.      m/$pattern/g didn't work 
PATCH20.      made /\$$foo/ look for literal '$foo' 
PATCH20.      makefiles now display new shift/reduce expectations 
PATCH20.      many more hints added 
PATCH20.      many more hints files added 
PATCH20.      modulus with highest bit in left operand set didn't always work 
PATCH20.      new OS/2 support 
PATCH20.      new version of newgetopt.pl 
PATCH20.      new warning for ambiguous use of unary operators 
PATCH20.      new warning for use of x with non-numeric right operand 
PATCH20.      new warning on missing $ for foreach variable 
PATCH20.      new warning on print accidentally used as function 
PATCH20.      new warning on spurious backslash 
PATCH20.      new warnings for failed use of stat operators on filenames with \n 
PATCH20.      paragraph mode now skips extra newlines automatically 
PATCH20.      pattern modifiers i and g didn't interact right 
PATCH20.      pattern modifiers i and o didn't interact right 
PATCH20.      perl - The perl programming language, Patch20 
PATCH20.      perl -P now uses location of sed determined by Configure 
PATCH20.      perldb couldn't debug file containing '-', such as STDIN designator 
PATCH20.      print $fh EXPR can now expect term rather than operator in EXPR 
PATCH20.      realloc(0, size) now does malloc in case library routines call it 
PATCH20.      relaxed requirement for semicolon at the end of a block 
PATCH20.      removed implicit int declarations on functions 
PATCH20.      running taintperl explicitly now does checks even if $< == $> 
PATCH20.      s()() and tr()() 
PATCH20.      s2p didn't output portable startup code 
PATCH20.      s2p didn't translate s/pat/\&/ or s/pat/\$/ or s/pat/\\1/ right 
PATCH20.      scalar keys %array now counts keys for you 
PATCH20.      seek(HANDLE, 0, 1) went to eof because of ancient Ultrix workaround 
PATCH20.      seekdir(), telldir() and rewinddir() now checked for independently 
PATCH20.      semantic compilation errors didn't abort execution 
PATCH20.      slice on null list in scalar context returned random value 
PATCH20.      some machines don't define ENOTSOCK in errno.h 
PATCH20.      splice with negative offset didn't work with $[ = 1 
PATCH20.      subroutines didn't localize $`, $&, $', $1 et al correctly 
PATCH20.      support added to installperl for cross-compilation 
PATCH20.      support added to pwd.pl to strip automounter crud 
PATCH20.      support for MSDOS folded into perldb.pl 
PATCH20.      termcap.pl didn't parse termcap terminal names right 
PATCH20.      the debugger made perl forget the last pattern used by // 
PATCH20.      the debugger now warns you on lines that can't set a breakpoint 
PATCH20.      the switch optimizer didn't do anything in subroutines 
PATCH20.      timelocal could loop on bad input 
PATCH20.      timelocal now calculates DST itself 
PATCH20.      tr/// now lets you say \- 
PATCH20.      tr/stuff// wasn't working right 
PATCH20.      usersub routines didn't reclaim temp values soon enough 
PATCH20.      various error messages have been clarified 
PATCH20.      wait failed when STDOUT or STDERR reopened to a pipe 
PATCH21.      patch #20, continued 
PATCH21.      perl - The perl programming language, Patch21 
PATCH22.      patch #20, continued 
PATCH22.      perl - The perl programming language, Patch22 
PATCH23.      patch #20, continued 
PATCH23.      perl - The perl programming language, Patch23 
PATCH24.      patch #20, continued 
PATCH24.      perl - The perl programming language, Patch24 
PATCH25.      patch #20, continued 
PATCH25.      perl - The perl programming language, Patch25 
PATCH26.      patch #20, continued 
PATCH26.      perl - The perl programming language, Patch26 
PATCH27.      patch #20, continued 
PATCH27.      perl - The perl programming language, Patch27 
PATCH28.      patch #20, continued 
PATCH28.      perl - The perl programming language, Patch28 
PATCH29.      patch #20, continued 
PATCH29.      perl - The perl programming language, Patch29 
PATCH30.      patch #20, continued 
PATCH30.      perl - The perl programming language, Patch30 
PATCH31.      patch #20, continued 
PATCH31.      perl - The perl programming language, Patch31 
PATCH32.      patch #20, continued 
PATCH32.      perl - The perl programming language, Patch32 
PATCH33.      patch #20, continued 
PATCH33.      perl - The perl programming language, Patch33 
PATCH34.      boneheaded typo in my_bcopy() 
PATCH34.      changed perlsh to use $/ = "\n\n" 
PATCH34.      expectterm incorrectly set to indicate start of program or block 
PATCH34.      join with null list attempted negative allocation 
PATCH34.      library files were installed without guaranteed permissions 
PATCH34.      perl - The perl programming language, Patch34 
PATCH34.      pidgone() wasn't declared right 
PATCH34.      quotes containing subscripts containing variables didn't parse right 
PATCH34.      some systems don't declare h_errno extern in header files 
PATCH34.      sprintf("%6.4s", "abcdefg") didn't print "abcd  " 
PATCH34.      tests for safe bcopy and memcpy sometimes needed libraries