summaryrefslogtreecommitdiff
path: root/proto.h
diff options
context:
space:
mode:
authorNicholas Clark <nick@ccl4.org>2009-10-12 16:06:20 +0100
committerNicholas Clark <nick@ccl4.org>2009-10-12 16:06:20 +0100
commita2a5de9516c1b256b060768ac6dad252a3aa3be7 (patch)
treeaeb1473ea930984671f646814f6a7a7802164960 /proto.h
parent5f5991a0d6d8ef99d2643b88a7d9285e35277331 (diff)
downloadperl-a2a5de9516c1b256b060768ac6dad252a3aa3be7.tar.gz
Add Perl_ck_warner(), which combines Perl_ckwarn() and Perl_warner().
Replace ckWARN{,2,3,4}() && Perl_warner() with it, which trades reduced code size (about 0.2%), for 1 more function call if warnings are not enabled. However, if we're now in the L1 or L2 cache when we weren't previously, that's still going to be a speed win.
Diffstat (limited to 'proto.h')
-rw-r--r--proto.h6
1 files changed, 6 insertions, 0 deletions
diff --git a/proto.h b/proto.h
index df73c20761..4afff50872 100644
--- a/proto.h
+++ b/proto.h
@@ -3702,6 +3702,12 @@ PERL_CALLCONV void Perl_warner(pTHX_ U32 err, const char* pat, ...)
#define PERL_ARGS_ASSERT_WARNER \
assert(pat)
+PERL_CALLCONV void Perl_ck_warner(pTHX_ U32 err, const char* pat, ...)
+ __attribute__format__(__printf__,pTHX_2,pTHX_3)
+ __attribute__nonnull__(pTHX_2);
+#define PERL_ARGS_ASSERT_CK_WARNER \
+ assert(pat)
+
PERL_CALLCONV void Perl_vwarner(pTHX_ U32 err, const char* pat, va_list* args)
__attribute__nonnull__(pTHX_2);
#define PERL_ARGS_ASSERT_VWARNER \