From: Noah Misch <noah@leadboat.com>
Date: Sat, 25 Jun 2022 21:15:56 +0000 (-0700)
Subject: Fix PostgreSQL::Test aliasing for Perl v5.10.1.
X-Git-Tag: REL_10_22~40
X-Git-Url: http://git.postgresql.org/gitweb/?a=commitdiff_plain;h=ca590a4e958f508a769aced1cb234db7e24a4d4a;p=postgresql.git

Fix PostgreSQL::Test aliasing for Perl v5.10.1.

This Perl segfaults if a declaration of the to-be-aliased package
precedes the aliasing itself.  Per buildfarm members lapwing and wrasse.
Like commit 20911775de4ab7ac3ecc68bd714cb3ed0fd68b6a, back-patch to v10
(all supported versions).

Discussion: https://postgr.es/m/20220625171533.GA2012493@rfd.leadboat.com
---

diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 14b8ee73776..14e9138a394 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -5,14 +5,9 @@
 # package the same symbol table as the older package.  See PostgresNode::new
 # for supporting heuristics.
 
-package PostgreSQL::Test::Cluster;
-
 use strict;
 use warnings;
-
-use PostgresNode;
 BEGIN { *PostgreSQL::Test::Cluster:: = \*PostgresNode::; }
-
-use Exporter 'import';
+use PostgresNode ();
 
 1;
diff --git a/src/test/perl/PostgreSQL/Test/Utils.pm b/src/test/perl/PostgreSQL/Test/Utils.pm
index e743bdfc834..2d15bbf21d7 100644
--- a/src/test/perl/PostgreSQL/Test/Utils.pm
+++ b/src/test/perl/PostgreSQL/Test/Utils.pm
@@ -3,14 +3,9 @@
 # Allow use of release 15+ Perl package name in older branches, by giving that
 # package the same symbol table as the older package.
 
-package PostgreSQL::Test::Utils;
-
 use strict;
 use warnings;
-
-use TestLib;
 BEGIN { *PostgreSQL::Test::Utils:: = \*TestLib::; }
-
-use Exporter 'import';
+use TestLib ();
 
 1;