warnings::compat - emulation for pre-5.6 Perls


Version 0.07


    use warnings::compat;


This is a module to help writing portable programs and modules across recent and old versions of Perl by providing a unique API to enable and disable warnings. Under the hood, it will use the real module when available, or install and use an emulation compatible with Perl 5.000. Therefore, use warnings::compat should do the right thing on every Perl version.

If you want this module to be automatically installed by the CPAN shell on old Perls, simply add it to the prerequisites list in your Makefile.PL:

    PREREQ_PM => {
        "warnings::compat"  => 0,

Note that only the files needed for your version of Perl will be installed (i.e., it won't install or overwrite the emulation modules on Perl 5.6 and later).

If you prefer to install it only on modern Perls, you can use this variant:

    # on pre-5.6 Perls, add warnings::compat to the prereq modules
    push @extra_prereqs, "warnings::compat"  if $] < 5.006;

        PREREQ_PM => {


Sébastien Aperghis-Tramoni, <sebastien at>


Please report any bugs or feature requests to bug-warnings-compat at, or through the web interface at I will be notified, and then you'll automatically be notified of progress on your bug as I make changes.


You can find documentation for this module with the perldoc command.

    perldoc warnings::compat

You can also look for information at:


Copyright 2006, 2007, 2008 Sébastien Aperghis-Tramoni, all rights reserved.

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