LanX has asked for the wisdom of the Perl Monks concerning the following question:
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; }
|
|---|
| Replies are listed 'Best First'. | |
|---|---|
|
Re: carp always showing stacktrace
by hippo (Archbishop) on Jul 20, 2020 at 17:19 UTC | |
by LanX (Saint) on Jul 20, 2020 at 17:23 UTC | |
|
Re: carp always showing stacktrace
by Perlbotics (Archbishop) on Jul 20, 2020 at 16:44 UTC | |
by LanX (Saint) on Jul 20, 2020 at 18:29 UTC | |
|
Re: carp always showing stacktrace
by siberia-man (Friar) on Jul 21, 2020 at 12:07 UTC | |
by Your Mother (Archbishop) on Jul 21, 2020 at 14:08 UTC | |
by LanX (Saint) on Jul 21, 2020 at 12:37 UTC |