diff options
Diffstat (limited to 'main/perl/perl-gcc5-h2ph.patch')
-rw-r--r-- | main/perl/perl-gcc5-h2ph.patch | 62 |
1 files changed, 0 insertions, 62 deletions
diff --git a/main/perl/perl-gcc5-h2ph.patch b/main/perl/perl-gcc5-h2ph.patch deleted file mode 100644 index 6733ebbab3..0000000000 --- a/main/perl/perl-gcc5-h2ph.patch +++ /dev/null @@ -1,62 +0,0 @@ -From 3bea78d24634e630b610f59957e7a019205a67b2 Mon Sep 17 00:00:00 2001 -From: Tony Cook <tony@develop-help.com> -Date: Mon, 16 Feb 2015 15:57:00 +1100 -Subject: [PATCH] h2ph: correct handling of hex constants for the preamble - -Previously they were treated as identifiers resulting in code -generated like C< &0xFFF >. - -We also try to prevent compile-time warnings from large hex integers, -the user isn't responsible for the generated code, so we delay those -warnings to run-time. ---- - utils/h2ph.PL | 19 ++++++++++++++++++- - 1 file changed, 18 insertions(+), 1 deletion(-) - -diff --git a/utils/h2ph.PL b/utils/h2ph.PL -index 9a8b14d..d082f22 100644 ---- a/utils/h2ph.PL -+++ b/utils/h2ph.PL -@@ -769,7 +769,7 @@ sub inc_dirs - sub build_preamble_if_necessary - { - # Increment $VERSION every time this function is modified: -- my $VERSION = 3; -+ my $VERSION = 4; - my $preamble = "$Dest_dir/_h2ph_pre.ph"; - - # Can we skip building the preamble file? -@@ -788,6 +788,11 @@ sub build_preamble_if_necessary - - open PREAMBLE, ">$preamble" or die "Cannot open $preamble: $!"; - print PREAMBLE "# This file was created by h2ph version $VERSION\n"; -+ # Prevent non-portable hex constants from warning. -+ # -+ # We still produce an overflow warning if we can't represent -+ # a hex constant as an integer. -+ print PREAMBLE "no warnings qw(portable);\n"; - - foreach (sort keys %define) { - if ($opt_D) { -@@ -814,6 +819,18 @@ DEFINE - # integer: - print PREAMBLE - "unless (defined &$_) { sub $_() { $1 } }\n\n"; -+ } elsif ($define{$_} =~ /^([+-]?0x[\da-f]+)U?L{0,2}$/i) { -+ # hex integer -+ # Special cased, since perl warns on hex integers -+ # that can't be represented in a UV. -+ # -+ # This way we get the warning at time of use, so the user -+ # only gets the warning if they happen to use this -+ # platform-specific definition. -+ my $code = $1; -+ $code = "hex('$code')" if length $code > 10; -+ print PREAMBLE -+ "unless (defined &$_) { sub $_() { $code } }\n\n"; - } elsif ($define{$_} =~ /^\w+$/) { - my $def = $define{$_}; - if ($isatype{$def}) { --- -2.3.0-192-g4a23b1a - |