bareword::filehandles(3pm)

NAME
bareword::filehandles - disables bareword filehandles

VERSION
version 0.007

SYNOPSIS
    no bareword::filehandles;

    open FH, $file            # dies
    open my $fh, $file;       # doesn't die

    print FH $string          # dies
    print STDERR $string      # doesn't die

DESCRIPTION
This module lexically disables the use of bareword filehandles with builtin functions, except for the special builtin filehandles "STDIN", "STDOUT", "STDERR", "ARGV", "ARGVOUT" and "DATA".

METHODS

  unimport
Disables bareword filehandles for the remainder of the scope being compiled.

  import
Enables bareword filehandles for the remainder of the scope being compiled.

LIMITATIONS
Filetest operators ("-X") can not be checked on Perl versions before 5.32, because hooking the op check function for these breaks stacked tests, e.g. "-f -w -x $file".

SEE ALSO
perlfunc, B::Hooks::OP::Check.

AUTHOR
Dagfinn Ilmari Mannsåker <ilmari@ilmari.org>

COPYRIGHT AND LICENSE
This software is copyright (c) 2011 - 2016 by Dagfinn Ilmari Mannsåker.

This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.