package MyPackage; use strict; use warnings; use Exporter qw(import); our @ISA = qw(Exporter); our @EXPORT_OK = qw( func_one func_two ); our @EXPORT_PRIVATE = qw( _private_one _private_two ); our %EXPORT_TAGS = ( all => \@EXPORT_OK, private => \@EXPORT_PRIVATE, ) #### use warnings; use strict; use MyPackage qw(:all :private); ... #### "_private_one" is not exported by the MyModule module "_private_two" is not exported by the MyModule module Can't continue after import errors at ... line .... BEGIN failed--compilation aborted at ... line ...