summaryrefslogtreecommitdiff
path: root/utils
diff options
context:
space:
mode:
authorAaron Crane <arc@cpan.org>2012-09-28 14:14:47 +0100
committerFather Chrysostomos <sprout@cpan.org>2012-09-28 09:27:55 -0700
commitdd5f7cf27c952e8698978713394fb4e4591f13f0 (patch)
tree9c4c23a213d163e697f63a243b49cc3d01da744a /utils
parent4038981c97e0b0ad3fb5a4bc69c0c6ec5a11e021 (diff)
downloadperl-dd5f7cf27c952e8698978713394fb4e4591f13f0.tar.gz
[perl #20636] Make h2xs skip #define macros with empty rhs
Otherwise the generated C code uses such macros in expressions, which causes compilation errors because the macro is expanded to an empty token list.
Diffstat (limited to 'utils')
-rw-r--r--utils/h2xs.PL4
1 files changed, 4 insertions, 0 deletions
diff --git a/utils/h2xs.PL b/utils/h2xs.PL
index ee4079f8ea..6b2c78f092 100644
--- a/utils/h2xs.PL
+++ b/utils/h2xs.PL
@@ -862,6 +862,10 @@ if( @path_h ){
$rest =~ s!/\*.*?(\*/|\n)|//.*!!g; # Remove comments
$rest =~ s/^\s+//;
$rest =~ s/\s+$//;
+ if ($rest eq '') {
+ print("Skip empty $def\n") if $opt_d;
+ next defines;
+ }
# Cannot do: (-1) and ((LHANDLE)3) are OK:
#print("Skip non-wordy $def => $rest\n"),
# next defines if $rest =~ /[^\w\$]/;