[prev in list] [next in list] [prev in thread] [next in thread]
List: perl5-changes
Subject: [Perl/perl5] e772cf: deb.c - when PL_copline is NOLINE show 0 not 2^32-1.
From: Yves Orton via perl5-changes <perl5-changes () perl ! org>
Date: 2022-08-29 18:51:06
Message-ID: Perl/perl5/push/refs/heads/blead/f603e1-e772cf () github ! com
[Download RAW message or body]
Branch: refs/heads/blead
Home: https://github.com/Perl/perl5
Commit: e772cf349a3609ba583f441d10e1e92c5e338377
https://github.com/Perl/perl5/commit/e772cf349a3609ba583f441d10e1e92c5e338377
Author: Yves Orton <demerphq@gmail.com>
Date: 2022-08-29 (Mon, 29 Aug 2022)
Changed paths:
M deb.c
Log Message:
-----------
deb.c - when PL_copline is NOLINE show 0 not 2^32-1.
NOLINE is defined to be U32_MAX (not sure why it is not 0,
as lines in files by convention are numbered from 1 so 0 should
be an illegal line number), some parts of our code explicitly
set the cop_line to be NOLINE. When we debug we should show this
as line 0, the U32_MAX value is somewhat confusing. We could also
just not show a line at all, but for now this makes more sense,
especially as the deb.c logic was using 0 when there is no curcop.
Without this patch:
$ ./perl -Dl -e'eval "1+;"x10'
(-e:0) ENTER scope 2 (savestack=38) at op.c:10897
(-e:4294967295) LEAVE scope 2 (savestack=46) at op.c:10937
(-e:4294967295) savestack: releasing items 46 -> 38
(-e:0) ENTER scope 2 (savestack=40) at perly.c:289
(-e:1) ENTER scope 3 (savestack=78) at toke.c:4868
With this patch:
$ ./perl -Dl -e'eval "1+;"x10'
(-e:0) ENTER scope 2 (savestack=38) at op.c:10897
(-e:0) LEAVE scope 2 (savestack=46) at op.c:10937
(-e:0) savestack: releasing items 46 -> 38
(-e:0) ENTER scope 2 (savestack=40) at perly.c:289
(-e:1) ENTER scope 3 (savestack=78) at toke.c:4868
This fixes GH Issue #20175
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic