diff options
author | Radu Greab <radu@netsoft.ro> | 2003-07-06 23:09:12 +0300 |
---|---|---|
committer | Jarkko Hietaniemi <jhi@iki.fi> | 2003-07-06 16:46:20 +0000 |
commit | 7619c85e4dd9a96a05fc0fc72ace9eb2b9f1bc6f (patch) | |
tree | 88ad9fbd60c34574dbe69a0d142746c4ba6673ef /pod | |
parent | a7433df8ff37a7cd2fbb0f3ac8f0c0cc2aa71114 (diff) | |
download | perl-7619c85e4dd9a96a05fc0fc72ace9eb2b9f1bc6f.tar.gz |
DProf fixes
Message-ID: <16136.22456.99575.573777@ix.netsoft.ro>
p4raw-id: //depot/perl@20034
Diffstat (limited to 'pod')
-rw-r--r-- | pod/perldiag.pod | 7 | ||||
-rw-r--r-- | pod/perltodo.pod | 7 | ||||
-rw-r--r-- | pod/perlvar.pod | 4 |
3 files changed, 18 insertions, 0 deletions
diff --git a/pod/perldiag.pod b/pod/perldiag.pod index b52404e944..30ea1ff170 100644 --- a/pod/perldiag.pod +++ b/pod/perldiag.pod @@ -2656,6 +2656,13 @@ there are in the savestack. (P) Failed an internal consistency check while trying to reset a weak reference. +=item panic: Devel::DProf inconsistent subroutine return + +(P) Devel::DProf called a subroutine that exited using goto(LABEL), +last(LABEL) or next(LABEL). Leaving that way a subroutine called from +an XSUB will lead very probably to a crash of the interpreter. This is +a bug that will hopefully one day get fixed. + =item panic: die %s (P) We popped the context stack to an eval context, and then discovered diff --git a/pod/perltodo.pod b/pod/perltodo.pod index 1b5db1183d..e434a1d4f0 100644 --- a/pod/perltodo.pod +++ b/pod/perltodo.pod @@ -580,6 +580,13 @@ Should taint be stopped from affecting control flow, if ($tainted)? Should tainted symbolic method calls and subref calls be stopped? (Look at Ruby's $SAFE levels for inspiration?) +=head2 Perform correctly when XSUBs call subroutines that exit via goto(LABEL) and friends + +If an XSUB calls a subroutine that exits using goto(LABEL), +last(LABEL) or next(LABEL), then the interpreter will very probably crash +with a segfault because the execution resumes in the XSUB instead of +never returning there. + =head1 Vague ideas Ideas which have been discussed, and which may or may not happen. diff --git a/pod/perlvar.pod b/pod/perlvar.pod index baa0d829fc..4ba6fcff1e 100644 --- a/pod/perlvar.pod +++ b/pod/perlvar.pod @@ -1078,6 +1078,10 @@ Provide informative "file" names for evals based on the place they were compiled Provide informative names to anonymous subroutines based on the place they were compiled. +=item 0x400 + +Debug assertion subroutines enter/exit. + =back Some bits may be relevant at compile-time only, some at |