according to Carp should carp()
# warn user (from perspective of caller) but without stacktrace
But no matter what I try, I'm getting a stacktrace and can't switch it off.
Any idea what's going wrong?
use strict; use warnings; use Carp; BEGIN {$Carp::Verbose=0}; $\="\n"; use constant DBG => 1; sub dbout { $Carp::Verbose=0; carp "@_" if DBG; } dbout 1..3; __END__;
C:/Perl_524/bin\perl.exe -w d:/PERL/perl/perl/signature.pl 1 2 3 at d:/PERL/perl/perl/signature.pl line 15. + # don't need this ... main::dbout(1, 2, 3) called at d:/PERL/perl/perl/signature.pl line + 18 # ... but this Compilation finished at Mon Jul 20 18:22:11
Cheers Rolf
(addicted to the Perl Programming Language :)
Wikisyntax for the Monastery
FWIW, my workaround. I never liked Carp anyway.
sub dbout { my ( undef, $filename, $line ) = caller(0); warn "@_ at $filename line $line\n" if DBG; }
In reply to carp always showing stacktrace by LanX
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |