Strict-Perl

 view release on metacpan or  search on metacpan

README  view on Meta::CPAN

  It's die if specified version doesn't match Strict::Perl's version.

  On Perl 5.010001 or later, Strict::Perl works as;

    use strict;
    use warnings qw(FATAL all);
    use Fatal # by compatible routine in Strict::Perl
    qw(
        seek sysseek
        dbmclose dbmopen
        binmode close chmod chown fcntl flock ioctl open sysopen truncate
        chdir closedir opendir link mkdir readlink rename rmdir symlink
        pipe
        msgctl msgget msgrcv msgsnd
        semctl semget semop
        shmctl shmget shmread
        accept bind connect getsockopt listen recv send setsockopt shutdown socketpair
        fork
    );
    use autodie qw(
        read sysread syswrite

lib/Strict/Perl.pm  view on Meta::CPAN

    warnings::->import;
}

# install Fatal CORE::* functions
sub _Fatal {
    my $package = (caller(1))[0];

    for my $function (
        qw(seek sysseek),                                                            # :io (excluded: read sysread syswrite)
        qw(dbmclose dbmopen),                                                        # :dbm
        qw(binmode close chmod chown fcntl flock ioctl truncate),                    # :file (excluded: fileno)
        qw(chdir closedir link mkdir readlink rename rmdir symlink),                 # :filesys (excluded: unlink)
        qw(msgctl msgget msgrcv msgsnd),                                             # :msg
        qw(semctl semget semop),                                                     # :semaphore
        qw(shmctl shmget shmread),                                                   # :shm
        qw(bind connect getsockopt listen recv send setsockopt shutdown socketpair), # :socket
        qw(fork),                                                                    # :threads
    ) {
        _install_fatal_function($function, $package);
    }

lib/Strict/Perl.pm  view on Meta::CPAN

It's die if specified version doesn't match Strict::Perl's version.

On Perl 5.010001 or later, Strict::Perl works as;

  use strict;
  use warnings qw(FATAL all); # not follow incompatible version-up of warnings.pm
  use Fatal # by compatible routine in Strict::Perl
  qw(
      seek sysseek
      dbmclose dbmopen
      binmode close chmod chown fcntl flock ioctl open sysopen truncate
      chdir closedir opendir link mkdir readlink rename rmdir symlink
      pipe
      msgctl msgget msgrcv msgsnd
      semctl semget semop
      shmctl shmget shmread
      accept bind connect getsockopt listen recv send setsockopt shutdown socketpair
      fork
  );
  use autodie qw(
      read sysread syswrite

lib/Strict/Perl.pm  view on Meta::CPAN

  );

On Perl 5.006 or later,

  use strict;
  use warnings qw(FATAL all); # not follow incompatible version-up of warnings.pm
  use Fatal # by compatible routine in Strict::Perl
  qw(
      seek sysseek
      dbmclose dbmopen
      binmode close chmod chown fcntl flock ioctl open sysopen truncate
      chdir closedir opendir link mkdir readlink rename rmdir symlink
      pipe
      msgctl msgget msgrcv msgsnd
      semctl semget semop
      shmctl shmget shmread
      accept bind connect getsockopt listen recv send setsockopt shutdown socketpair
      fork
  );

On Perl 5.00503 or later,

  use strict;
  $^W = 1;
  $SIG{__WARN__} = sub { die "$_[0]\n" }; # not follow incompatible version-up of warnings.pm
  use Fatal # by compatible routine in Strict::Perl
  qw(
      seek sysseek
      dbmclose dbmopen
      binmode close chmod chown fcntl flock ioctl open sysopen truncate
      chdir closedir opendir link mkdir readlink rename rmdir symlink
      pipe
      msgctl msgget msgrcv msgsnd
      semctl semget semop
      shmctl shmget shmread
      accept bind connect getsockopt listen recv send setsockopt shutdown socketpair
      fork
  );

Prohibited modules in script are;



( run in 0.983 second using v1.01-cache-2.11-cpan-5511b514fd6 )