


warnings(3p)     Perl Programmers Reference Guide    warnings(3p)


NAME
       warnings - Perl pragma to control optional warnings

SYNOPSIS
           use warnings;
           no warnings;

           use warnings "all";
           no warnings "all";

           use warnings::register;
           if (warnings::enabled()) {
               warnings::warn("some warning");
           }

           if (warnings::enabled("void")) {
               warnings::warn("void", "some warning");
           }

           if (warnings::enabled($object)) {
               warnings::warn($object, "some warning");
           }

           warnings::warnif("some warning");
           warnings::warnif("void", "some warning");
           warnings::warnif($object, "some warning");

DESCRIPTION
       The "warnings" pragma is a replacement for the command
       line flag "-w", but the pragma is limited to the enclosing
       block, while the flag is global.  See perllexwarn for more
       information.

       If no import list is supplied, all possible warnings are
       either enabled or disabled.

       A number of functions are provided to assist module
       authors.

       use warnings::register
           Creates a new warnings category with the same name as
           the package where the call to the pragma is used.

       warnings::enabled()
           Use the warnings category with the same name as the
           current package.

           Return TRUE if that warnings category is enabled in
           the calling module.  Otherwise returns FALSE.

       warnings::enabled($category)
           Return TRUE if the warnings category, $category, is
           enabled in the calling module.  Otherwise returns
           FALSE.



perl v5.10.1                2008-09-29                          1





warnings(3p)     Perl Programmers Reference Guide    warnings(3p)


       warnings::enabled($object)
           Use the name of the class for the object reference,
           $object, as the warnings category.

           Return TRUE if that warnings category is enabled in
           the first scope where the object is used.  Otherwise
           returns FALSE.

       warnings::warn($message)
           Print $message to STDERR.

           Use the warnings category with the same name as the
           current package.

           If that warnings category has been set to "FATAL" in
           the calling module then die. Otherwise return.

       warnings::warn($category, $message)
           Print $message to STDERR.

           If the warnings category, $category, has been set to
           "FATAL" in the calling module then die. Otherwise
           return.

       warnings::warn($object, $message)
           Print $message to STDERR.

           Use the name of the class for the object reference,
           $object, as the warnings category.

           If that warnings category has been set to "FATAL" in
           the scope where $object is first used then die.
           Otherwise return.

       warnings::warnif($message)
           Equivalent to:

               if (warnings::enabled())
                 { warnings::warn($message) }

       warnings::warnif($category, $message)
           Equivalent to:

               if (warnings::enabled($category))
                 { warnings::warn($category, $message) }

       warnings::warnif($object, $message)
           Equivalent to:

               if (warnings::enabled($object))
                 { warnings::warn($object, $message) }

       See "Pragmatic Modules" in perlmodlib and perllexwarn.




perl v5.10.1                2008-09-29                          2


