summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNicholas Clark <nick@ccl4.org>2012-04-11 16:47:27 +0200
committerNicholas Clark <nick@ccl4.org>2012-04-12 00:35:06 +0200
commitfc4b5f72837b3df426905782485aee7b794cb692 (patch)
tree7365743e04143a9f1dc8a4b06efa296936a904c5
parent2653c1e3b10f71430de1ab8ab0417ca5b048ab19 (diff)
downloadperl-fc4b5f72837b3df426905782485aee7b794cb692.tar.gz
Tweak the FEATURE_IS_ENABLED() macro to avoid a bug in the HP-UX compiler.
-rw-r--r--feature.h4
-rwxr-xr-xregen/feature.pl4
2 files changed, 6 insertions, 2 deletions
diff --git a/feature.h b/feature.h
index b595cabf94..dc9696ec9c 100644
--- a/feature.h
+++ b/feature.h
@@ -20,10 +20,12 @@
#define CURRENT_FEATURE_BUNDLE \
((CURRENT_HINTS & HINT_FEATURE_MASK) >> HINT_FEATURE_SHIFT)
+/* Avoid using ... && Perl_feature_is_enabled(...) as that triggers a bug in
+ the HP-UX cc on PA-RISC */
#define FEATURE_IS_ENABLED(name) \
((CURRENT_HINTS \
& HINT_LOCALIZE_HH) \
- && Perl_feature_is_enabled(aTHX_ STR_WITH_LEN(name)))
+ ? Perl_feature_is_enabled(aTHX_ STR_WITH_LEN(name)) : FALSE)
/* The longest string we pass in. */
#define MAX_FEATURE_LEN (sizeof("evalbytes")-1)
diff --git a/regen/feature.pl b/regen/feature.pl
index 2a8d369ba2..222215a077 100755
--- a/regen/feature.pl
+++ b/regen/feature.pl
@@ -231,10 +231,12 @@ print $h <<'EOH';
#define CURRENT_FEATURE_BUNDLE \
((CURRENT_HINTS & HINT_FEATURE_MASK) >> HINT_FEATURE_SHIFT)
+/* Avoid using ... && Perl_feature_is_enabled(...) as that triggers a bug in
+ the HP-UX cc on PA-RISC */
#define FEATURE_IS_ENABLED(name) \
((CURRENT_HINTS \
& HINT_LOCALIZE_HH) \
- && Perl_feature_is_enabled(aTHX_ STR_WITH_LEN(name)))
+ ? Perl_feature_is_enabled(aTHX_ STR_WITH_LEN(name)) : FALSE)
/* The longest string we pass in. */
EOH