Use 'use strict' in all Perl programs
authorPeter Eisentraut <[email protected]>
Sun, 4 Dec 2016 17:00:00 +0000 (12:00 -0500)
committerPeter Eisentraut <[email protected]>
Thu, 5 Jan 2017 17:34:48 +0000 (12:34 -0500)
contrib/seg/seg-validate.pl
contrib/seg/sort-segments.pl
doc/src/sgml/mk_feature_tables.pl
src/pl/plperl/plc_perlboot.pl
src/test/locale/sort-test.pl
src/tools/msvc/build.pl
src/tools/msvc/gendef.pl
src/tools/msvc/pgflex.pl
src/tools/pginclude/pgcheckdefines
src/tools/version_stamp.pl

index cb3fb9a099a54b8abc46507d0b503bc0fc8d46eb..b8957ed984a01ba20cb87a645fdc71f63585dcf9 100755 (executable)
@@ -1,20 +1,23 @@
 #!/usr/bin/perl
-$integer = '[+-]?[0-9]+';
-$real    = '[+-]?[0-9]+\.[0-9]+';
-
-$RANGE     = '(\.\.)(\.)?';
-$PLUMIN    = q(\'\+\-\');
-$FLOAT     = "(($integer)|($real))([eE]($integer))?";
-$EXTENSION = '<|>|~';
-
-$boundary  = "($EXTENSION)?$FLOAT";
-$deviation = $FLOAT;
-
-$rule_1 = $boundary . $PLUMIN . $deviation;
-$rule_2 = $boundary . $RANGE . $boundary;
-$rule_3 = $boundary . $RANGE;
-$rule_4 = $RANGE . $boundary;
-$rule_5 = $boundary;
+
+use strict;
+
+my $integer = '[+-]?[0-9]+';
+my $real    = '[+-]?[0-9]+\.[0-9]+';
+
+my $RANGE     = '(\.\.)(\.)?';
+my $PLUMIN    = q(\'\+\-\');
+my $FLOAT     = "(($integer)|($real))([eE]($integer))?";
+my $EXTENSION = '<|>|~';
+
+my $boundary  = "($EXTENSION)?$FLOAT";
+my $deviation = $FLOAT;
+
+my $rule_1 = $boundary . $PLUMIN . $deviation;
+my $rule_2 = $boundary . $RANGE . $boundary;
+my $rule_3 = $boundary . $RANGE;
+my $rule_4 = $RANGE . $boundary;
+my $rule_5 = $boundary;
 
 
 print "$rule_5\n";
index a465468d5b8bde170c1fb1f8a7e8dbbf3bda7e96..04eafd92f21fe7185ffaebfaf9df43a8e7f3555b 100755 (executable)
@@ -2,6 +2,10 @@
 
 # this script will sort any table with the segment data type in its last column
 
+use strict;
+
+my @rows;
+
 while (<>)
 {
    chomp;
@@ -10,11 +14,11 @@ while (<>)
 
 foreach (
    sort {
-       @ar = split("\t", $a);
-       $valA = pop @ar;
+       my @ar = split("\t", $a);
+       my $valA = pop @ar;
        $valA =~ s/[~<> ]+//g;
        @ar = split("\t", $b);
-       $valB = pop @ar;
+       my $valB = pop @ar;
        $valB =~ s/[~<> ]+//g;
        $valA <=> $valB
    } @rows)
index 45dea798cdd2f77e3aa3d2b98b4317faf51a9606..93dab2132e181ea6753e035291f6566ae7cd6beb 100644 (file)
@@ -2,6 +2,8 @@
 
 # doc/src/sgml/mk_feature_tables.pl
 
+use strict;
+
 my $yesno = $ARGV[0];
 
 open PACK, $ARGV[1] or die;
index d506d01163b0a8b1cfad07be19b697d8b6eb0859..bb2d009be09dc8afc09cb7e3c11dced4da702d14 100644 (file)
@@ -1,5 +1,7 @@
 #  src/pl/plperl/plc_perlboot.pl
 
+use strict;
+
 use 5.008001;
 use vars qw(%_SHARED $_TD);
 
index ce7b93c571cc2a64dcbec1dd04e321910411b4fa..cb7e4934e44efe99defce0019acf94a85a6212a9 100755 (executable)
@@ -1,4 +1,6 @@
 #! /usr/bin/perl
+
+use strict;
 use locale;
 
 open(INFILE, "<$ARGV[0]");
index a5469cd28985a4c1098426b0421329e30897bea2..2e7c54853a6906e4db474b5b94c0d8aec758545e 100644 (file)
@@ -2,6 +2,8 @@
 
 # src/tools/msvc/build.pl
 
+use strict;
+
 BEGIN
 {
 
@@ -68,6 +70,6 @@ else
 
 # report status
 
-$status = $? >> 8;
+my $status = $? >> 8;
 
 exit $status;
index a6c43c2c3927d51f3b8ae573e2fc60d3e74e9096..3bcff7ffaf6b4392a8ae0ba547f54b1352e1befe 100644 (file)
@@ -1,11 +1,11 @@
-my @def;
-
-use warnings;
 use strict;
+use warnings;
 use 5.8.0;
 use File::Spec::Functions qw(splitpath catpath);
 use List::Util qw(max);
 
+my @def;
+
 #
 # Script that generates a .DEF file for all objects in a directory
 #
index 474ce63e5ca0f829b24dfc1be05789081f40311a..3a42add0d293c91f87eb7d8868379a43b68ce5b2 100644 (file)
@@ -2,12 +2,12 @@
 
 # src/tools/msvc/pgflex.pl
 
-# silence flex bleatings about file path style
-$ENV{CYGWIN} = 'nodosfilewarning';
-
 use strict;
 use File::Basename;
 
+# silence flex bleatings about file path style
+$ENV{CYGWIN} = 'nodosfilewarning';
+
 # assume we are in the postgres source root
 
 require 'src/tools/msvc/buildenv.pl' if -e 'src/tools/msvc/buildenv.pl';
index 5db507070f6051493d97a8731176ff92fa25601b..e166efa08dad7663efb96b19007506aae9d5b932 100755 (executable)
 # src/tools/pginclude/pgcheckdefines
 #
 
+use strict;
+
 use Cwd;
 use File::Basename;
 
-$topdir = cwd();
+my $topdir = cwd();
 
 # Programs to use
-$FIND = "find";
-$MAKE = "make";
+my $FIND = "find";
+my $MAKE = "make";
 
 #
 # Build arrays of all the .c and .h files in the tree
@@ -38,6 +40,8 @@ $MAKE = "make";
 # Including these .h files would clutter the list of define'd symbols and
 # cause a lot of false-positive results.
 #
+my (@cfiles, @hfiles);
+
 open PIPE, "$FIND * -type f -name '*.c' |"
   or die "can't fork: $!";
 while (<PIPE>)
@@ -63,7 +67,9 @@ close PIPE or die "$FIND failed: $!";
 # a hash table.  To cover the possibility of multiple .h files defining
 # the same symbol, we make each hash entry a hash of filenames.
 #
-foreach $hfile (@hfiles)
+my %defines;
+
+foreach my $hfile (@hfiles)
 {
    open HFILE, $hfile
      or die "can't open $hfile: $!";
@@ -82,9 +88,9 @@ foreach $hfile (@hfiles)
 # files it #include's.  Then extract all the symbols it tests for defined-ness,
 # and check each one against the previously built hashtable.
 #
-foreach $file (@hfiles, @cfiles)
+foreach my $file (@hfiles, @cfiles)
 {
-   ($fname, $fpath) = fileparse($file);
+   my ($fname, $fpath) = fileparse($file);
    chdir $fpath or die "can't chdir to $fpath: $!";
 
    #
@@ -96,16 +102,18 @@ foreach $file (@hfiles, @cfiles)
    # hence printing multiple definitions --- we keep the last one, which
    # should come from the current Makefile.
    #
+   my $MAKECMD;
+
    if (-f "Makefile" || -f "GNUmakefile")
    {
        $MAKECMD = "$MAKE -qp";
    }
    else
    {
-       $subdir = $fpath;
+       my $subdir = $fpath;
        chop $subdir;
-       $top_builddir = "..";
-       $tmp          = $fpath;
+       my $top_builddir = "..";
+       my $tmp          = $fpath;
        while (($tmp = dirname($tmp)) ne '.')
        {
            $top_builddir = $top_builddir . "/..";
@@ -113,6 +121,9 @@ foreach $file (@hfiles, @cfiles)
        $MAKECMD =
 "$MAKE -qp 'subdir=$subdir' 'top_builddir=$top_builddir' -f '$top_builddir/src/Makefile.global'";
    }
+
+   my ($CPPFLAGS, $CFLAGS, $CFLAGS_SL, $PTHREAD_CFLAGS, $CC);
+
    open PIPE, "$MAKECMD |"
      or die "can't fork: $!";
    while (<PIPE>)
@@ -153,15 +164,15 @@ foreach $file (@hfiles, @cfiles)
    # "gcc -H" reports inclusions on stderr as "... filename" where the
    # number of dots varies according to nesting depth.
    #
-   @includes = ();
-   $COMPILE  = "$CC $CPPFLAGS $CFLAGS -H -E $fname";
+   my @includes = ();
+   my $COMPILE  = "$CC $CPPFLAGS $CFLAGS -H -E $fname";
    open PIPE, "$COMPILE 2>&1 >/dev/null |"
      or die "can't fork: $!";
    while (<PIPE>)
    {
        if (m/^\.+ (.*)/)
        {
-           $include = $1;
+           my $include = $1;
 
            # Ignore system headers (absolute paths); but complain if a
            # .c file includes a system header before any PG header.
@@ -176,7 +187,7 @@ foreach $file (@hfiles, @cfiles)
            $include =~ s|^\./||;
 
            # Make path relative to top of tree
-           $ipath = $fpath;
+           my $ipath = $fpath;
            while ($include =~ s|^\.\./||)
            {
                $ipath = dirname($ipath) . "/";
@@ -202,19 +213,17 @@ foreach $file (@hfiles, @cfiles)
    #
    open FILE, $fname
      or die "can't open $file: $!";
-   $inif = 0;
+   my $inif = 0;
    while (<FILE>)
    {
-       $line = $_;
+       my $line = $_;
        if ($line =~ m/^\s*#\s*ifdef\s+(\w+)/)
        {
-           $symbol = $1;
-           &checkit;
+           checkit($file, $1, @includes);
        }
        if ($line =~ m/^\s*#\s*ifndef\s+(\w+)/)
        {
-           $symbol = $1;
-           &checkit;
+           checkit($file, $1, @includes);
        }
        if ($line =~ m/^\s*#\s*if\s+/)
        {
@@ -224,8 +233,7 @@ foreach $file (@hfiles, @cfiles)
        {
            while ($line =~ s/\bdefined(\s+|\s*\(\s*)(\w+)//)
            {
-               $symbol = $2;
-               &checkit;
+               checkit($file, $2, @includes);
            }
            if (!($line =~ m/\\$/))
            {
@@ -243,6 +251,7 @@ exit 0;
 # Check an is-defined reference
 sub checkit
 {
+   my ($file, $symbol, @includes) = @_;
 
    # Ignore if symbol isn't defined in any PG include files
    if (!defined $defines{$symbol})
@@ -258,10 +267,10 @@ sub checkit
    # occur after the use of the symbol.  Given our normal file layout,
    # however, the risk is minimal.
    #
-   foreach $deffile (keys %{ $defines{$symbol} })
+   foreach my $deffile (keys %{ $defines{$symbol} })
    {
        return if $deffile eq $file;
-       foreach $reffile (@includes)
+       foreach my $reffile (@includes)
        {
            return if $deffile eq $reffile;
        }
@@ -273,7 +282,7 @@ sub checkit
    #
    if ($file =~ m/\.h$/)
    {
-       foreach $deffile (keys %{ $defines{$symbol} })
+       foreach my $deffile (keys %{ $defines{$symbol} })
        {
            return if $deffile eq 'src/include/c.h';
            return if $deffile eq 'src/include/postgres.h';
@@ -284,7 +293,7 @@ sub checkit
    }
 
    #
-   @places = keys %{ $defines{$symbol} };
+   my @places = keys %{ $defines{$symbol} };
    print "$file references $symbol, defined in @places\n";
 
    # print "includes: @includes\n";
index 87bca411595d1f15a58059ed0f391c1e0916e288..dc9173f2343260891900c9310022642c9c79065b 100755 (executable)
 # "devel", "alphaN", "betaN", "rcN".
 #
 
+use strict;
+
 # Major version is hard-wired into the script.  We update it when we branch
 # a new development version.
-$majorversion = 10;
+my $majorversion = 10;
 
 # Validate argument and compute derived variables
-$minor = shift;
+my $minor = shift;
 defined($minor) || die "$0: missing required argument: minor-version\n";
 
+my ($dotneeded, $numericminor);
+
 if ($minor =~ m/^\d+$/)
 {
    $dotneeded    = 1;
@@ -58,6 +62,8 @@ else
    die "$0: minor-version must be N, devel, alphaN, betaN, or rcN\n";
 }
 
+my $fullversion;
+
 # Create various required forms of the version number
 if ($dotneeded)
 {
@@ -67,13 +73,13 @@ else
 {
    $fullversion = $majorversion . $minor;
 }
-$numericversion = $majorversion . "." . $numericminor;
-$padnumericversion = sprintf("%d%04d", $majorversion, $numericminor);
+my $numericversion = $majorversion . "." . $numericminor;
+my $padnumericversion = sprintf("%d%04d", $majorversion, $numericminor);
 
 # Get the autoconf version number for eventual nag message
 # (this also ensures we're in the right directory)
 
-$aconfver = "";
+my $aconfver = "";
 open(FILE, "configure.in") || die "could not read configure.in: $!\n";
 while (<FILE>)
 {
@@ -90,7 +96,7 @@ $aconfver ne ""
 
 # Update configure.in and other files that contain version numbers
 
-$fixedfiles = "";
+my $fixedfiles = "";
 
 sed_file("configure.in",
 "-e 's/AC_INIT(\\[PostgreSQL\\], \\[[0-9a-z.]*\\]/AC_INIT([PostgreSQL], [$fullversion]/'"