summaryrefslogtreecommitdiff
path: root/handy.h
diff options
context:
space:
mode:
authorYves Orton <demerphq@gmail.com>2023-03-21 19:37:04 +0100
committerYves Orton <demerphq@gmail.com>2023-03-29 20:54:49 +0800
commit663830b3656805dfa9415c7fb5ba22096f1b03b3 (patch)
tree0bfc7e96d88fac1a0ff4f3317900a4a7c4e5d4f2 /handy.h
parente945ef1bb85641668c20dd9cf99e96d9b05bec00 (diff)
downloadperl-663830b3656805dfa9415c7fb5ba22096f1b03b3.tar.gz
perl.h - silence certain warnings on HPUX globally.
There are two warnings classes which account for a very large number of the warnings produced when building on HPUX Itanium. We know the cause of these warnings and we are ok with ignoring them. One set comes from our memory wrap checks, where we end up doing a comparison against constants in certain conditions. See the comments in handy.h line 2723 related to PERL_MALLOC_WRAP. The other set comes from our common "trick" of doing OO in C code with casting. This is the foundation of how we manage SV types and how we manage regular expression ops (regops). If this logic really was a problem then we would have lots of test failures and segfaults, and we do not, so we can silence them.
Diffstat (limited to 'handy.h')
-rw-r--r--handy.h1
1 files changed, 1 insertions, 0 deletions
diff --git a/handy.h b/handy.h
index f12263ffd4..1714584d4f 100644
--- a/handy.h
+++ b/handy.h
@@ -2730,6 +2730,7 @@ PoisonWith(0xEF) for catching access to freed memory.
* max(n) * sizeof(t) > MEM_SIZE_MAX
*/
+
# define _MEM_WRAP_NEEDS_RUNTIME_CHECK(n,t) \
( sizeof(MEM_SIZE) < sizeof(n) \
|| sizeof(t) > ((MEM_SIZE)1 << 8*(sizeof(MEM_SIZE) - sizeof(n))))