summaryrefslogtreecommitdiff
path: root/dist
diff options
context:
space:
mode:
authorYves Orton <demerphq@gmail.com>2023-03-22 12:12:00 +0100
committerYves Orton <demerphq@gmail.com>2023-03-29 20:54:49 +0800
commit0589d99c19836db7d8fd519bbf404854ab56fe54 (patch)
treef7f1a121b3c2eac30bd3f56aab4ce9a71a0f3bdc /dist
parentbbd6967b3d549a2e37beaf28fd6f68674f9322f2 (diff)
downloadperl-0589d99c19836db7d8fd519bbf404854ab56fe54.tar.gz
ExtUtils-ParseXS - silence warnings about unreached code in generated XS code
On HPUX we get a lot of: "APItest.c", line 4004: warning #2111-D: statement is unreachable: PUTBACK because people have used something like XSRETURN(1); and we generate code that does PUTBACK; return; Adding a pragma to silence it makes the builds happier;
Diffstat (limited to 'dist')
-rw-r--r--dist/ExtUtils-ParseXS/lib/ExtUtils/ParseXS.pm19
-rw-r--r--dist/ExtUtils-ParseXS/lib/ExtUtils/ParseXS/Constants.pm2
-rw-r--r--dist/ExtUtils-ParseXS/lib/ExtUtils/ParseXS/CountLines.pm2
-rw-r--r--dist/ExtUtils-ParseXS/lib/ExtUtils/ParseXS/Eval.pm2
-rw-r--r--dist/ExtUtils-ParseXS/lib/ExtUtils/ParseXS/Utilities.pm2
-rw-r--r--dist/ExtUtils-ParseXS/lib/perlxs.pod2
-rw-r--r--dist/ExtUtils-ParseXS/t/001-basic.t1
7 files changed, 24 insertions, 6 deletions
diff --git a/dist/ExtUtils-ParseXS/lib/ExtUtils/ParseXS.pm b/dist/ExtUtils-ParseXS/lib/ExtUtils/ParseXS.pm
index 398c8a58b7..4dfb7c7f47 100644
--- a/dist/ExtUtils-ParseXS/lib/ExtUtils/ParseXS.pm
+++ b/dist/ExtUtils-ParseXS/lib/ExtUtils/ParseXS.pm
@@ -11,7 +11,7 @@ use Symbol;
our $VERSION;
BEGIN {
- $VERSION = '3.49';
+ $VERSION = '3.50';
require ExtUtils::ParseXS::Constants; ExtUtils::ParseXS::Constants->VERSION($VERSION);
require ExtUtils::ParseXS::CountLines; ExtUtils::ParseXS::CountLines->VERSION($VERSION);
require ExtUtils::ParseXS::Utilities; ExtUtils::ParseXS::Utilities->VERSION($VERSION);
@@ -636,7 +636,16 @@ EOF
$self->print_section();
$self->death("PPCODE must be last thing") if @{ $self->{line} };
print "\tLEAVE;\n" if $self->{ScopeThisXSUB};
+ print "#if defined(__HP_cc) || defined(__HP_aCC)\n",
+ "#pragma diag_suppress 2111\n",
+ "#endif\n"
+ if $^O eq "hpux";
print "\tPUTBACK;\n\treturn;\n";
+ print "#if defined(__HP_cc) || defined(__HP_aCC)\n",
+ "#pragma diag_default 2111\n",
+ "#endif\n"
+ if $^O eq "hpux";
+
}
elsif ($self->check_keyword("CODE")) {
my $consumed_code = $self->print_section();
@@ -798,6 +807,10 @@ EOF
# if (errbuf[0])
# Perl_croak(aTHX_ errbuf);
EOF
+ print "#if defined(__HP_cc) || defined(__HP_aCC)\n",
+ "#pragma diag_suppress 2128\n",
+ "#endif\n"
+ if $^O eq "hpux";
if ($xsreturn) {
print Q(<<"EOF") unless $PPCODE;
@@ -809,6 +822,10 @@ EOF
# XSRETURN_EMPTY;
EOF
}
+ print "#if defined(__HP_cc) || defined(__HP_aCC)\n",
+ "#pragma diag_default 2128\n",
+ "#endif\n"
+ if $^O eq "hpux";
print Q(<<"EOF");
#]]
diff --git a/dist/ExtUtils-ParseXS/lib/ExtUtils/ParseXS/Constants.pm b/dist/ExtUtils-ParseXS/lib/ExtUtils/ParseXS/Constants.pm
index 82baf18e7f..5acd1b0c4c 100644
--- a/dist/ExtUtils-ParseXS/lib/ExtUtils/ParseXS/Constants.pm
+++ b/dist/ExtUtils-ParseXS/lib/ExtUtils/ParseXS/Constants.pm
@@ -3,7 +3,7 @@ use strict;
use warnings;
use Symbol;
-our $VERSION = '3.49';
+our $VERSION = '3.50';
=head1 NAME
diff --git a/dist/ExtUtils-ParseXS/lib/ExtUtils/ParseXS/CountLines.pm b/dist/ExtUtils-ParseXS/lib/ExtUtils/ParseXS/CountLines.pm
index e8e9bc1180..0282372808 100644
--- a/dist/ExtUtils-ParseXS/lib/ExtUtils/ParseXS/CountLines.pm
+++ b/dist/ExtUtils-ParseXS/lib/ExtUtils/ParseXS/CountLines.pm
@@ -1,7 +1,7 @@
package ExtUtils::ParseXS::CountLines;
use strict;
-our $VERSION = '3.49';
+our $VERSION = '3.50';
our $SECTION_END_MARKER;
diff --git a/dist/ExtUtils-ParseXS/lib/ExtUtils/ParseXS/Eval.pm b/dist/ExtUtils-ParseXS/lib/ExtUtils/ParseXS/Eval.pm
index 6f7cca739a..da323cf109 100644
--- a/dist/ExtUtils-ParseXS/lib/ExtUtils/ParseXS/Eval.pm
+++ b/dist/ExtUtils-ParseXS/lib/ExtUtils/ParseXS/Eval.pm
@@ -2,7 +2,7 @@ package ExtUtils::ParseXS::Eval;
use strict;
use warnings;
-our $VERSION = '3.49';
+our $VERSION = '3.50';
=head1 NAME
diff --git a/dist/ExtUtils-ParseXS/lib/ExtUtils/ParseXS/Utilities.pm b/dist/ExtUtils-ParseXS/lib/ExtUtils/ParseXS/Utilities.pm
index 519d0472c1..054cbb26fb 100644
--- a/dist/ExtUtils-ParseXS/lib/ExtUtils/ParseXS/Utilities.pm
+++ b/dist/ExtUtils-ParseXS/lib/ExtUtils/ParseXS/Utilities.pm
@@ -5,7 +5,7 @@ use Exporter;
use File::Spec;
use ExtUtils::ParseXS::Constants ();
-our $VERSION = '3.49';
+our $VERSION = '3.50';
our (@ISA, @EXPORT_OK);
@ISA = qw(Exporter);
diff --git a/dist/ExtUtils-ParseXS/lib/perlxs.pod b/dist/ExtUtils-ParseXS/lib/perlxs.pod
index 2eb1cbc7de..0441fcc4d5 100644
--- a/dist/ExtUtils-ParseXS/lib/perlxs.pod
+++ b/dist/ExtUtils-ParseXS/lib/perlxs.pod
@@ -2409,7 +2409,7 @@ or use the methods given in L<perlcall>.
=head1 XS VERSION
This document covers features supported by C<ExtUtils::ParseXS>
-(also known as C<xsubpp>) 3.49
+(also known as C<xsubpp>) 3.50
=head1 AUTHOR DIAGNOSTICS
diff --git a/dist/ExtUtils-ParseXS/t/001-basic.t b/dist/ExtUtils-ParseXS/t/001-basic.t
index c3617aabb5..d983476a5a 100644
--- a/dist/ExtUtils-ParseXS/t/001-basic.t
+++ b/dist/ExtUtils-ParseXS/t/001-basic.t
@@ -94,6 +94,7 @@ is( $seen, 1, "Line numbers created in output file, as intended" );
local $/ = undef;
seek($IN, 0, 0);
my $filecontents = <$IN>;
+ $filecontents =~ s/^#if defined\(__HP_cc\).*\n#.*\n#endif\n//gm;
my $good_T_BOOL_re =
qr|\QXS_EUPXS(XS_XSTest_T_BOOL)\E
.+?