Path: utzoo!utgpu!news-server.csri.toronto.edu!rpi!zaphod.mps.ohio-state.edu!mips!kpc.com!ardent!mac From: mac@gold.kpc.com (Mike McNamara) Newsgroups: comp.lang.perl Subject: debugging broken in perl4.00 (plus fix) Message-ID: Date: 2 Apr 91 22:21:30 GMT Sender: uucp@kpc.com (UNIX-to-UNIX Copy) Reply-To: mac@ardent.com (Michael McNamara) Distribution: comp Organization: Kubota Pacific Computer Incoporated, Sanata Clara, CA Lines: 36 Nntp-Posting-Host: gold In Kate Hedstrom mail about running perl on a Stardent 3000 she mentioned that > > 5. The debugger dumps core. :-( > This is do to a bug in perl4.00, file doarg.c, line 933: if (arg->arg_type == O_DBSUBR && !sub->usersub) { sub is declared as a local variable, and it has not yet been set. I'm not sure what to fix, except to delete the check of sub->usersub. sub gets reassigned to either sub = stab_sub(DBsub); or to sub = stab_sub(stab); depending on whether this if evaluates to true or false, respectfully. You perl experts tell me. I tried commenting out the check, and things seemed to work (as far as I could tell), and also initializing it to sub = stab_sub(DBsub); which also seemed to work. -mac -- +-----------+-------------------------------------------------------------------+ |mac@kpc.com| Increasing Software complexity lets us sell Mainframes as | | | personal computers. Carry on, X windows/Postscript/emacs/CASE!! | +-----------+-------------------------------------------------------------------+