New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
line numbers are given % 64k #1853
Comments
From muaddib@ilwrath.mesas.comCreated by muaddib@fundsxpress.comThis is a bug report for perl from muaddib@fundsxpress.com, ----------------------------------------------------------------- $ perl -e 'print "\n" x 66000, "\$foo=\"baz\";\n"' > toolong.pl Below, I've enclosed a patch to fix this behavior in 5.005_03, and have Thanks, p.s. the patch: Inline Patchdiff -urb perl5.005_03.orig/handy.h perl5.005_03/handy.h
--- perl5.005_03.orig/handy.h Sat Mar 27 11:57:02 1999
+++ perl5.005_03/handy.h Thu Mar 16 18:39:50 2000
@@ -256,11 +256,11 @@
#endif
/* Line numbers are unsigned, 16 bits. */
-typedef U16 line_t;
+typedef U32 line_t;
#ifdef lint
#define NOLINE ((line_t)0)
#else
-#define NOLINE ((line_t) 65535)
+#define NOLINE ((line_t) 4294967295UL)
#endif
diff -urb perl5.005_03.orig/op.c perl5.005_03/op.c
--- perl5.005_03.orig/op.c Sun Mar 28 10:13:03 1999
+++ perl5.005_03/op.c Thu Mar 16 18:40:17 2000
@@ -3745,7 +3745,7 @@
I32 oldscope = PL_scopestack_ix;
ENTER;
SAVESPTR(PL_compiling.cop_filegv);
- SAVEI16(PL_compiling.cop_line);
+ SAVEI32(PL_compiling.cop_line);
save_svref(&PL_rs);
sv_setsv(PL_rs, PL_nrs);
diff -urb perl5.005_03.orig/pp_ctl.c perl5.005_03/pp_ctl.c
--- perl5.005_03.orig/pp_ctl.c Sat Mar 27 11:56:24 1999
+++ perl5.005_03/pp_ctl.c Thu Mar 16 18:40:34 2000
@@ -2354,7 +2354,7 @@
PL_compiling.cop_stash = PL_curstash;
}
SAVESPTR(PL_compiling.cop_filegv);
- SAVEI16(PL_compiling.cop_line);
+ SAVEI32(PL_compiling.cop_line);
sprintf(tmpbuf, "_<(%.10s_eval %lu)", code, (unsigned long)++PL_evalseq);
PL_compiling.cop_filegv = gv_fetchfile(tmpbuf+2);
PL_compiling.cop_line = 1;
@@ -2705,7 +2705,7 @@
PUSHBLOCK(cx, CXt_EVAL, SP);
PUSHEVAL(cx, name, PL_compiling.cop_filegv);
- SAVEI16(PL_compiling.cop_line);
+ SAVEI32(PL_compiling.cop_line);
PL_compiling.cop_line = 0;
PUTBACK;
diff -urb perl5.005_03.orig/toke.c perl5.005_03/toke.c
--- perl5.005_03.orig/toke.c Sun Mar 28 01:57:23 1999
+++ perl5.005_03/toke.c Thu Mar 16 18:39:50 2000
@@ -251,7 +251,7 @@
SAVEI32(PL_lex_state);
SAVESPTR(PL_lex_inpat);
SAVEI32(PL_lex_inwhat);
- SAVEI16(PL_curcop->cop_line);
+ SAVEI32(PL_curcop->cop_line);
SAVEPPTR(PL_bufptr);
SAVEPPTR(PL_bufend);
SAVEPPTR(PL_oldbufptr);
@@ -694,7 +694,7 @@
SAVEI32(PL_lex_state);
SAVESPTR(PL_lex_inpat);
SAVEI32(PL_lex_inwhat);
- SAVEI16(PL_curcop->cop_line);
+ SAVEI32(PL_curcop->cop_line);
SAVEPPTR(PL_bufptr);
SAVEPPTR(PL_oldbufptr);
SAVEPPTR(PL_oldoldbufptr); Perl Info
|
From [Unknown Contact. See original ticket]On Tue, 18 Apr 2000, James Jurach wrote:
Seems like a useful bug to have, if you ask me... read it as: Your code is |
From [Unknown Contact. See original ticket]
I anticipated this response, but am still hoping for a solution. We have a system which generates these large scripts automagically from a james |
From [Unknown Contact. See original ticket]On Tue, 18 Apr 2000, James E Jurach Jr. wrote:
No. I was just pulling your leg. I can't honestly picture someone typing in (never mind maintain) a 64k |
From [Unknown Contact. See original ticket]At 11:22 AM 4/18/00 -0500, James E Jurach Jr. wrote:
Space reasons. Line numbers are stored in the generated optree, and the Changing perl to use 32bit line numbers would take a few source changes, Dan --------------------------------------"it's like this"------------------- |
From [Unknown Contact. See original ticket]James E Jurach Jr . <muaddib@ilwrath.mesas.com> writes:
As I understand it the reason is to save memory in the op nodes. |
From [Unknown Contact. See original ticket]Dan Sugalski <dan@sidhe.org> wrote:
Here's a bigger patch, inclusive of the previous suggested change, but with Someone may wish to change the 'usebiglinenum' config.sh name, the james p.s. the patch: Inline Patchdiff -urb perl5.005_03.orig/Configure perl5.005_03/Configure
--- perl5.005_03.orig/Configure Sun Mar 28 10:12:57 1999
+++ perl5.005_03/Configure Tue Apr 18 13:38:38 2000
@@ -629,6 +629,7 @@
mallocsrc=''
malloctype=''
usemymalloc=''
+usebiglinenum=''
installman1dir=''
man1dir=''
man1direxp=''
@@ -3209,6 +3210,32 @@
echo "Could not find manual pages in source form." >&4
fi
+: determine which malloc to compile in
+echo " "
+case "$usebiglinenum" in
+[yY]*|true|$define) dflt='y' ;;
+''|*) dflt='n' ;;
+esac
+cat <<EOM
+
+Perl is normally compiled with a 16-bit line number, which will cause the
+inaccurate reporting of the line numbers in error messages when the number
+of lines in the script getting compiled exceeds 64k. Configuring perl to
+use 32-bit line numbers will result in a slightly larger memory signature.
+Unless you expect to have large scripts, it should be safe to say 'n' here.
+EOM
+rp="Do you wish to use 32-bit line numbers?"
+. ./myread
+usebiglinenum="$ans"
+case "$ans" in
+y*|true)
+ usebiglinenum='define'
+ ;;
+*)
+ usebiglinenum='undef'
+ ;;
+esac
+
: see what memory models we can support
case "$models" in
'')
@@ -12267,6 +12294,7 @@
uniq='$uniq'
usedl='$usedl'
usemymalloc='$usemymalloc'
+usebiglinenum='$usebiglinenum'
usenm='$usenm'
useopcode='$useopcode'
useperlio='$useperlio'
diff -urb perl5.005_03.orig/config_h.SH perl5.005_03/config_h.SH
--- perl5.005_03.orig/config_h.SH Wed Mar 3 20:35:32 1999
+++ perl5.005_03/config_h.SH Tue Apr 18 13:28:11 2000
@@ -2116,6 +2116,12 @@
#$usethreads USE_THREADS /**/
#$d_oldpthreads OLD_PTHREADS_API /**/
+/* USE_BIGLINENUM:
+ * This symbol, if defined, indicates that Perl should
+ * be built to report line numbers beyond 64k accurately.
+ */
+#$usebiglinenum USE_BIGLINENUM /**/
+
/* Time_t:
* This symbol holds the type returned by time(). It can be long,
* or time_t on BSD sites (in which case <sys/types.h> should be
diff -urb perl5.005_03.orig/handy.h perl5.005_03/handy.h
--- perl5.005_03.orig/handy.h Sat Mar 27 11:57:02 1999
+++ perl5.005_03/handy.h Tue Apr 18 13:17:14 2000
@@ -256,11 +256,19 @@
#endif
/* Line numbers are unsigned, 16 bits. */
+#ifdef USE_BIGLINENUM
+typedef U32 line_t;
+#else
typedef U16 line_t;
+#endif
#ifdef lint
#define NOLINE ((line_t)0)
#else
-#define NOLINE ((line_t) 65535)
+# ifdef USE_BIGLINENUM
+# define NOLINE ((line_t) 4294967295UL)
+# else
+# define NOLINE ((line_t) 65535)
+# endif
#endif
diff -urb perl5.005_03.orig/op.c perl5.005_03/op.c
--- perl5.005_03.orig/op.c Sun Mar 28 10:13:03 1999
+++ perl5.005_03/op.c Tue Apr 18 13:18:04 2000
@@ -3745,7 +3745,11 @@
I32 oldscope = PL_scopestack_ix;
ENTER;
SAVESPTR(PL_compiling.cop_filegv);
+#ifdef USE_BIGLINENUM
+ SAVEI32(PL_compiling.cop_line);
+#else
SAVEI16(PL_compiling.cop_line);
+#endif
save_svref(&PL_rs);
sv_setsv(PL_rs, PL_nrs);
diff -urb perl5.005_03.orig/pp_ctl.c perl5.005_03/pp_ctl.c
--- perl5.005_03.orig/pp_ctl.c Sat Mar 27 11:56:24 1999
+++ perl5.005_03/pp_ctl.c Tue Apr 18 13:18:51 2000
@@ -2354,7 +2354,11 @@
PL_compiling.cop_stash = PL_curstash;
}
SAVESPTR(PL_compiling.cop_filegv);
+#ifdef USE_BIGLINENUM
+ SAVEI32(PL_compiling.cop_line);
+#else
SAVEI16(PL_compiling.cop_line);
+#endif
sprintf(tmpbuf, "_<(%.10s_eval %lu)", code, (unsigned long)++PL_evalseq);
PL_compiling.cop_filegv = gv_fetchfile(tmpbuf+2);
PL_compiling.cop_line = 1;
@@ -2705,7 +2709,11 @@
PUSHBLOCK(cx, CXt_EVAL, SP);
PUSHEVAL(cx, name, PL_compiling.cop_filegv);
+#ifdef USE_BIGLINENUM
+ SAVEI32(PL_compiling.cop_line);
+#else
SAVEI16(PL_compiling.cop_line);
+#endif
PL_compiling.cop_line = 0;
PUTBACK;
diff -urb perl5.005_03.orig/toke.c perl5.005_03/toke.c
--- perl5.005_03.orig/toke.c Sun Mar 28 01:57:23 1999
+++ perl5.005_03/toke.c Tue Apr 18 13:16:42 2000
@@ -251,7 +251,11 @@
SAVEI32(PL_lex_state);
SAVESPTR(PL_lex_inpat);
SAVEI32(PL_lex_inwhat);
+#ifdef USE_BIGLINENUM
+ SAVEI32(PL_curcop->cop_line);
+#else
SAVEI16(PL_curcop->cop_line);
+#endif
SAVEPPTR(PL_bufptr);
SAVEPPTR(PL_bufend);
SAVEPPTR(PL_oldbufptr); |
From [Unknown Contact. See original ticket]James E Jurach Jr. writes:
Please replace all this by #ifdef USE_LINENUM_32 and define a new macro SAVE_LINENUM (which goes either to SAVEI16 or Ilya |
From [Unknown Contact. See original ticket]On Tue, 18 Apr 2000, James Jurach wrote:
You should change the comment, too. |
From [Unknown Contact. See original ticket]On Tue, 18 Apr 2000, James E Jurach Jr. wrote:
Or 32 bits, depending on the #define -- you should probably change this
Cheers, |
From [Unknown Contact. See original ticket]On Tue, 18 Apr 2000, James E Jurach Jr. wrote:
Um, excuse me? (Is this from copy+paste?) More like: : determine whether to use 16-bit or 32-bit line numbers Cheers, |
From [Unknown Contact. See original ticket]ilya wrote:
These changes are made to the patch and tested. james Inline Patchdiff -urb perl5.005_03.orig/Configure perl5.005_03/Configure
--- perl5.005_03.orig/Configure Sun Mar 28 10:12:57 1999
+++ perl5.005_03/Configure Wed Apr 19 09:42:42 2000
@@ -629,6 +629,7 @@
mallocsrc=''
malloctype=''
usemymalloc=''
+uselinenum32=''
installman1dir=''
man1dir=''
man1direxp=''
@@ -3209,6 +3210,32 @@
echo "Could not find manual pages in source form." >&4
fi
+: determine which malloc to compile in
+echo " "
+case "$uselinenum32" in
+[yY]*|true|$define) dflt='y' ;;
+''|*) dflt='n' ;;
+esac
+cat <<EOM
+
+Perl is normally compiled with a 16-bit line number, which will cause the
+inaccurate reporting of the line numbers in error messages when the number
+of lines in the script getting compiled exceeds 64k. Configuring perl to
+use 32-bit line numbers will result in a slightly larger memory signature.
+Unless you expect to have large scripts, it should be safe to say 'n' here.
+EOM
+rp="Do you wish to use 32-bit line numbers?"
+. ./myread
+uselinenum32="$ans"
+case "$ans" in
+y*|true)
+ uselinenum32='define'
+ ;;
+*)
+ uselinenum32='undef'
+ ;;
+esac
+
: see what memory models we can support
case "$models" in
'')
@@ -12267,6 +12294,7 @@
uniq='$uniq'
usedl='$usedl'
usemymalloc='$usemymalloc'
+uselinenum32='$uselinenum32'
usenm='$usenm'
useopcode='$useopcode'
useperlio='$useperlio'
diff -urb perl5.005_03.orig/config_h.SH perl5.005_03/config_h.SH
--- perl5.005_03.orig/config_h.SH Wed Mar 3 20:35:32 1999
+++ perl5.005_03/config_h.SH Wed Apr 19 09:43:05 2000
@@ -2116,6 +2116,12 @@
#$usethreads USE_THREADS /**/
#$d_oldpthreads OLD_PTHREADS_API /**/
+/* USE_LINENUM_32:
+ * This symbol, if defined, indicates that Perl should
+ * be built to report line numbers beyond 64k accurately.
+ */
+#$uselinenum32 USE_LINENUM_32 /**/
+
/* Time_t:
* This symbol holds the type returned by time(). It can be long,
* or time_t on BSD sites (in which case <sys/types.h> should be
diff -urb perl5.005_03.orig/handy.h perl5.005_03/handy.h
--- perl5.005_03.orig/handy.h Sat Mar 27 11:57:02 1999
+++ perl5.005_03/handy.h Wed Apr 19 09:47:49 2000
@@ -256,11 +256,21 @@
#endif
/* Line numbers are unsigned, 16 bits. */
+#ifdef USE_LINENUM_32
+typedef U32 line_t;
+#define SAVE_LINENUM(i) SAVEI32(i)
+#else
typedef U16 line_t;
+#define SAVE_LINENUM(i) SAVEI16(i)
+#endif
#ifdef lint
#define NOLINE ((line_t)0)
#else
-#define NOLINE ((line_t) 65535)
+# ifdef USE_LINENUM_32
+# define NOLINE ((line_t) 4294967295UL)
+# else
+# define NOLINE ((line_t) 65535)
+# endif
#endif
diff -urb perl5.005_03.orig/op.c perl5.005_03/op.c
--- perl5.005_03.orig/op.c Sun Mar 28 10:13:03 1999
+++ perl5.005_03/op.c Wed Apr 19 09:46:17 2000
@@ -3745,7 +3745,7 @@
I32 oldscope = PL_scopestack_ix;
ENTER;
SAVESPTR(PL_compiling.cop_filegv);
- SAVEI16(PL_compiling.cop_line);
+ SAVE_LINENUM(PL_compiling.cop_line);
save_svref(&PL_rs);
sv_setsv(PL_rs, PL_nrs);
diff -urb perl5.005_03.orig/pp_ctl.c perl5.005_03/pp_ctl.c
--- perl5.005_03.orig/pp_ctl.c Sat Mar 27 11:56:24 1999
+++ perl5.005_03/pp_ctl.c Wed Apr 19 09:46:44 2000
@@ -2354,7 +2354,7 @@
PL_compiling.cop_stash = PL_curstash;
}
SAVESPTR(PL_compiling.cop_filegv);
- SAVEI16(PL_compiling.cop_line);
+ SAVE_LINENUM(PL_compiling.cop_line);
sprintf(tmpbuf, "_<(%.10s_eval %lu)", code, (unsigned long)++PL_evalseq);
PL_compiling.cop_filegv = gv_fetchfile(tmpbuf+2);
PL_compiling.cop_line = 1;
@@ -2705,7 +2705,7 @@
PUSHBLOCK(cx, CXt_EVAL, SP);
PUSHEVAL(cx, name, PL_compiling.cop_filegv);
- SAVEI16(PL_compiling.cop_line);
+ SAVE_LINENUM(PL_compiling.cop_line);
PL_compiling.cop_line = 0;
PUTBACK;
diff -urb perl5.005_03.orig/toke.c perl5.005_03/toke.c
--- perl5.005_03.orig/toke.c Sun Mar 28 01:57:23 1999
+++ perl5.005_03/toke.c Wed Apr 19 09:46:54 2000
@@ -251,7 +251,7 @@
SAVEI32(PL_lex_state);
SAVESPTR(PL_lex_inpat);
SAVEI32(PL_lex_inwhat);
- SAVEI16(PL_curcop->cop_line);
+ SAVE_LINENUM(PL_curcop->cop_line);
SAVEPPTR(PL_bufptr);
SAVEPPTR(PL_bufend);
SAVEPPTR(PL_oldbufptr); |
From [Unknown Contact. See original ticket]James E Jurach Jr. (lists.p5p):
I wouldn't be patching a 5.005_03 at this stage...
And I *think* (BICBW) you want to be playing with Metaconfig units,
This reads a bit weird to me, for some reason I can't place. Consider Perl normally stores its line numbers in a 16-bit variable. This will cause |
From @nwc10On Wed, Apr 19, 2000 at 03:33:54PM +0000, Simon Cozens wrote:
I'd suggest Perl normally stores its line numbers in a 16-bit variable. This will cause Personally I feel that "64k" is obfuscation in this context Nicholas Clark |
From [Unknown Contact. See original ticket]On Wed, 19 Apr 2000, Nicholas Clark wrote:
Hi. I'm new. I hope I'm not being an idiot by sending this out, but it perl -le 'for (65532..65537) {eval ((";\n"x$_)."die") or print number of lines: 65532; error: Died at (eval 1) line 65533. number of lines: 65533; error: Died. number of lines: 65534; error: Died at (eval 3) line 1. number of lines: 65535; error: Died. number of lines: 65536; error: Died at (eval 5) line 1. number of lines: 65537; error: Died at (eval 6) line 2. -- perl -V Characteristics of this binary (from libperl): |
From [Unknown Contact. See original ticket]
Perhaps a more realistic test is to include final line terminator: % perl -we 'for $n (65532..65537) {$_=";\n"x$n."die;\n"; eval $_ or\ Alternatively (with real files): % perl -we 'for (65532..65537) {open FOO,"> foo"; print FOO ";\n"x$_."die;\n"; \ Robin |
From [Unknown Contact. See original ticket]On Apr 19, Robin Barker said:
Just to be an annoying stickler... have we forgotten about Perl's #line #!/usr/bin/perl "Died at foo.pl line 1000" Just to point an alternative to "\n" x $some_large_number; |
From @nwc10On Wed, Apr 19, 2000 at 05:43:18PM +0100, Robin Barker wrote:
Cool. So which style of wording do we want? a: Perl normally stores its line numbers in a 16-bit variable. This will cause b: Perl normally stores its line numbers in a 16-bit variable. This will cause c: [neither of the above] Nicholas Clark |
From @tamiasOn Wed, Apr 19, 2000 at 05:52:56PM +0100, Nicholas Clark wrote:
I vote for c. As Jeff pointed out, there's the #line directive to Suggestion: Perl normally stories its line numbers in a 16-bit variable. This will Ronald |
From @nwc10On Wed, Apr 19, 2000 at 01:10:00PM -0400, Ronald J Kimball wrote:
I like this style (over a) for the reason you state. Nicholas Clark |
From [Unknown Contact. See original ticket]
It occurs to me that a decent 32-bit word boundary argument might eliminate Are there any platforms on which perl is built which would not pad the james |
From [Unknown Contact. See original ticket]At 02:52 PM 4/19/00 -0500, James E Jurach Jr. wrote:
Things aren't padded on VAX systems. I don't think they're necessarily Dan --------------------------------------"it's like this"------------------- |
From [Unknown Contact. See original ticket]Dan Sugalski writes:
??? malloc() will round things anyway. Ilya |
From [Unknown Contact. See original ticket]At 07:44 PM 4/19/00 -0400, Ilya Zakharevich wrote:
Malloc doesn't have anything to do with it. The line number field's Dan --------------------------------------"it's like this"------------------- |
From [Unknown Contact. See original ticket]
They are padded to 32-bit boundaries on X86 systems using gcc. The There are compiler switches for some compiler/arch combinations that force I'm afraid that worrying about the memory utilization effects of structure |
From [Unknown Contact. See original ticket]On Wed, 19 Apr 2000, James E Jurach Jr. wrote:
Yes, the same comments I made previously. I'll make them again.
'uselinenum32' has nothing to do with "which malloc to compile in". This [snip]
Or: unsigned, 32 bits. Maybe this comment, instead of being changed,
[snip] Cheers, |
From [Unknown Contact. See original ticket]Just to compilcate this thread even more, I'd point out that if saving |
From @nwc10On Wed, Apr 19, 2000 at 04:05:41PM -0400, Dan Sugalski wrote:
ARM systems pad to 4 byte alignment. (I've found several bugs in source code #include <stdio.h> main () here on this x86 machine: bash-2.02$ ./pack whereas on my StrongARM: [nick@Bagpuss test]$ ./pack Is it worth investigating how much memory could be saved simply by re-ordering Nicholas Clark |
From [Unknown Contact. See original ticket]At 05:55 PM 4/22/00 +0100, Nicholas Clark wrote:
Given the sizes of the other elements in there and the number of platforms Dan --------------------------------------"it's like this"------------------- |
From [Unknown Contact. See original ticket]
I agree with this, my original suggestion. There are very few platforms The patch not having to deal with a configuration question is below this james Inline Patchdiff -urb perl5.005_03.orig/handy.h perl5.005_03/handy.h
--- perl5.005_03.orig/handy.h Sat Mar 27 11:57:02 1999
+++ perl5.005_03/handy.h Sun Apr 23 15:04:55 2000
@@ -255,12 +255,12 @@
# define toCTRL(c) (toUPPER(c) ^ 64)
#endif
-/* Line numbers are unsigned, 16 bits. */
-typedef U16 line_t;
+/* Line numbers are unsigned, 32 bits. */
+typedef U32 line_t;
#ifdef lint
#define NOLINE ((line_t)0)
#else
-#define NOLINE ((line_t) 65535)
+#define NOLINE ((line_t) 4294967295UL)
#endif
diff -urb perl5.005_03.orig/op.c perl5.005_03/op.c
--- perl5.005_03.orig/op.c Sun Mar 28 10:13:03 1999
+++ perl5.005_03/op.c Sun Apr 23 15:05:13 2000
@@ -3745,7 +3745,7 @@
I32 oldscope = PL_scopestack_ix;
ENTER;
SAVESPTR(PL_compiling.cop_filegv);
- SAVEI16(PL_compiling.cop_line);
+ SAVEI32(PL_compiling.cop_line);
save_svref(&PL_rs);
sv_setsv(PL_rs, PL_nrs);
diff -urb perl5.005_03.orig/pp_ctl.c perl5.005_03/pp_ctl.c
--- perl5.005_03.orig/pp_ctl.c Sat Mar 27 11:56:24 1999
+++ perl5.005_03/pp_ctl.c Sun Apr 23 15:05:39 2000
@@ -2354,7 +2354,7 @@
PL_compiling.cop_stash = PL_curstash;
}
SAVESPTR(PL_compiling.cop_filegv);
- SAVEI16(PL_compiling.cop_line);
+ SAVEI32(PL_compiling.cop_line);
sprintf(tmpbuf, "_<(%.10s_eval %lu)", code, (unsigned long)++PL_evalseq);
PL_compiling.cop_filegv = gv_fetchfile(tmpbuf+2);
PL_compiling.cop_line = 1;
@@ -2705,7 +2705,7 @@
PUSHBLOCK(cx, CXt_EVAL, SP);
PUSHEVAL(cx, name, PL_compiling.cop_filegv);
- SAVEI16(PL_compiling.cop_line);
+ SAVEI32(PL_compiling.cop_line);
PL_compiling.cop_line = 0;
PUTBACK;
diff -urb perl5.005_03.orig/toke.c perl5.005_03/toke.c
--- perl5.005_03.orig/toke.c Sun Mar 28 01:57:23 1999
+++ perl5.005_03/toke.c Sun Apr 23 15:05:44 2000
@@ -251,7 +251,7 @@
SAVEI32(PL_lex_state);
SAVESPTR(PL_lex_inpat);
SAVEI32(PL_lex_inwhat);
- SAVEI16(PL_curcop->cop_line);
+ SAVEI32(PL_curcop->cop_line);
SAVEPPTR(PL_bufptr);
SAVEPPTR(PL_bufend);
SAVEPPTR(PL_oldbufptr); |
Migrated from rt.perl.org#3116 (status was 'resolved')
Searchable as RT3116$
The text was updated successfully, but these errors were encountered: