thewml / website-meta-language

An old offline HTML preprocessor (which can be used for static site generation), written in Perl and C that is still maintained for legacy reasons, but probably not recommended for new sites.
https://www.shlomifish.org/open-source/projects/website-meta-language/
GNU General Public License v2.0
14 stars 8 forks source link

uninitialized value in pattern match (m//) at /usr/share/wml/TheWML/Frontends/Wml/WmlRc.pm line 48 #33

Closed traumschule closed 5 years ago

traumschule commented 5 years ago

48: if ( not $self->_main->_opt_c and $self->_main->_src =~ m|/| )


$ wml --version
Use of uninitialized value in pattern match (m//) at /usr/share/wml/TheWML/Frontends/Wml/WmlRc.pm line 48.
TheWML::Frontends::Wml::WmlRc::_process_wmlrc(TheWML::Frontends::Wml::WmlRc=HASH(0x17a9da8)) called at /usr/share/wml/TheWML/Frontends/Wml/Runner.pm line 858
TheWML::Frontends::Wml::Runner::run_with_ARGV(TheWML::Frontends::Wml::Runner=HASH(0x14a501c), HASH(0x16491a0)) called at /usr/bin/wml line 47
This is WML Version 2.12.0
Copyright (c) 1996-2001 Ralf S. Engelschall.
Copyright (c) 1999-2001 Denis Barbier.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

shlomif commented 5 years ago

what is your .wmlrc? Can you try it in a new user / new VM / travis CI?

traumschule commented 5 years ago

There's no such file.

shlomif commented 5 years ago

@traumschule : can you share the output of printenv? Does it happen in a new user? Perhaps use https://metacpan.org/search?q=devel%20trace or strace.

@xtaran : any idea regarding debian?

traumschule commented 5 years ago
$ ~/test_wml$ perl -d:Trace /usr/local/bin/wml test.wml 2>&1 |tee dtrace
>> /usr/local/bin/wml:2: eval 'exec /usr/bin/perl -S $0 ${1+"$@"}'
>> /usr/local/bin/wml:46: TheWML::Frontends::Wml::Runner->new->run_with_ARGV(
>> /usr/local/lib/wml/TheWML/Frontends/Wml/Runner.pm:83:     my $self = bless +{}, shift;
>> /usr/local/lib/wml/TheWML/Frontends/Wml/Runner.pm:85:     $self->_pass_mgr( TheWML::Frontends::Wml::PassesManager->new );
>> /usr/local/lib/wml/TheWML/Frontends/Wml/PassesManager.pm:68:     my $self = bless +{}, shift;
>> /usr/local/lib/wml/TheWML/Frontends/Wml/PassesManager.pm:69:     $self->_gnu_m4( scalar( which('gm4') ) // scalar( which('m4') ) );
>> /home/traumschule/perl5/lib/perl5/File/Which.pm:47:   my ($exec) = @_;
>> /home/traumschule/perl5/lib/perl5/File/Which.pm:49:   return undef unless defined $exec;
>> /home/traumschule/perl5/lib/perl5/File/Which.pm:50:   return undef if $exec eq '';
>> /home/traumschule/perl5/lib/perl5/File/Which.pm:52:   my $all = wantarray;
>> /home/traumschule/perl5/lib/perl5/File/Which.pm:53:   my @results = ();
>> /home/traumschule/perl5/lib/perl5/File/Which.pm:56:   if ( IS_VMS ) {
>> /home/traumschule/perl5/lib/perl5/File/Which.pm:64:   if ( IS_MAC ) {
>> /home/traumschule/perl5/lib/perl5/File/Which.pm:82:   return $exec
>> /home/traumschule/perl5/lib/perl5/File/Which.pm:85:   my @path;
>> /home/traumschule/perl5/lib/perl5/File/Which.pm:86:   if($^O eq 'MSWin32') {
>> /home/traumschule/perl5/lib/perl5/File/Which.pm:95:     @path = File::Spec->path;
>> /usr/lib/i386-linux-gnu/perl/5.28/File/Spec/Unix.pm:135:     return () unless exists $ENV{PATH};
>> /usr/lib/i386-linux-gnu/perl/5.28/File/Spec/Unix.pm:136:     my @path = split(':', $ENV{PATH});
>> /usr/lib/i386-linux-gnu/perl/5.28/File/Spec/Unix.pm:137:     foreach (@path) { $_ = '.' if $_ eq '' }
>> /usr/lib/i386-linux-gnu/perl/5.28/File/Spec/Unix.pm:137:     foreach (@path) { $_ = '.' if $_ eq '' }
>> /usr/lib/i386-linux-gnu/perl/5.28/File/Spec/Unix.pm:137:     foreach (@path) { $_ = '.' if $_ eq '' }
>> /usr/lib/i386-linux-gnu/perl/5.28/File/Spec/Unix.pm:137:     foreach (@path) { $_ = '.' if $_ eq '' }
>> /usr/lib/i386-linux-gnu/perl/5.28/File/Spec/Unix.pm:137:     foreach (@path) { $_ = '.' if $_ eq '' }
>> /usr/lib/i386-linux-gnu/perl/5.28/File/Spec/Unix.pm:137:     foreach (@path) { $_ = '.' if $_ eq '' }
>> /usr/lib/i386-linux-gnu/perl/5.28/File/Spec/Unix.pm:137:     foreach (@path) { $_ = '.' if $_ eq '' }
>> /usr/lib/i386-linux-gnu/perl/5.28/File/Spec/Unix.pm:137:     foreach (@path) { $_ = '.' if $_ eq '' }
>> /usr/lib/i386-linux-gnu/perl/5.28/File/Spec/Unix.pm:138:     return @path;
>> /home/traumschule/perl5/lib/perl5/File/Which.pm:97:   if ( $IMPLICIT_CURRENT_DIR ) {
>> /home/traumschule/perl5/lib/perl5/File/Which.pm:101:   foreach my $base ( map { File::Spec->catfile($_, $exec) } @path ) {
>> /home/traumschule/perl5/lib/perl5/File/Which.pm:101:   foreach my $base ( map { File::Spec->catfile($_, $exec) } @path ) {
>> /home/traumschule/perl5/lib/perl5/File/Which.pm:101:   foreach my $base ( map { File::Spec->catfile($_, $exec) } @path ) {
>> /home/traumschule/perl5/lib/perl5/File/Which.pm:101:   foreach my $base ( map { File::Spec->catfile($_, $exec) } @path ) {
>> /home/traumschule/perl5/lib/perl5/File/Which.pm:101:   foreach my $base ( map { File::Spec->catfile($_, $exec) } @path ) {
>> /home/traumschule/perl5/lib/perl5/File/Which.pm:101:   foreach my $base ( map { File::Spec->catfile($_, $exec) } @path ) {
>> /home/traumschule/perl5/lib/perl5/File/Which.pm:101:   foreach my $base ( map { File::Spec->catfile($_, $exec) } @path ) {
>> /home/traumschule/perl5/lib/perl5/File/Which.pm:101:   foreach my $base ( map { File::Spec->catfile($_, $exec) } @path ) {
>> /home/traumschule/perl5/lib/perl5/File/Which.pm:102:     for my $ext ( @PATHEXT ) {
>> /home/traumschule/perl5/lib/perl5/File/Which.pm:103:       my $file = $base.$ext;
>> /home/traumschule/perl5/lib/perl5/File/Which.pm:106:       next if -d $file;
>> /home/traumschule/perl5/lib/perl5/File/Which.pm:108:       if (
>> /home/traumschule/perl5/lib/perl5/File/Which.pm:102:     for my $ext ( @PATHEXT ) {
>> /home/traumschule/perl5/lib/perl5/File/Which.pm:103:       my $file = $base.$ext;
>> /home/traumschule/perl5/lib/perl5/File/Which.pm:106:       next if -d $file;
>> /home/traumschule/perl5/lib/perl5/File/Which.pm:108:       if (
>> /home/traumschule/perl5/lib/perl5/File/Which.pm:102:     for my $ext ( @PATHEXT ) {
>> /home/traumschule/perl5/lib/perl5/File/Which.pm:103:       my $file = $base.$ext;
>> /home/traumschule/perl5/lib/perl5/File/Which.pm:106:       next if -d $file;
>> /home/traumschule/perl5/lib/perl5/File/Which.pm:108:       if (
>> /home/traumschule/perl5/lib/perl5/File/Which.pm:102:     for my $ext ( @PATHEXT ) {
>> /home/traumschule/perl5/lib/perl5/File/Which.pm:103:       my $file = $base.$ext;
>> /home/traumschule/perl5/lib/perl5/File/Which.pm:106:       next if -d $file;
>> /home/traumschule/perl5/lib/perl5/File/Which.pm:108:       if (
>> /home/traumschule/perl5/lib/perl5/File/Which.pm:102:     for my $ext ( @PATHEXT ) {
>> /home/traumschule/perl5/lib/perl5/File/Which.pm:103:       my $file = $base.$ext;
>> /home/traumschule/perl5/lib/perl5/File/Which.pm:106:       next if -d $file;
>> /home/traumschule/perl5/lib/perl5/File/Which.pm:108:       if (
>> /home/traumschule/perl5/lib/perl5/File/Which.pm:102:     for my $ext ( @PATHEXT ) {
>> /home/traumschule/perl5/lib/perl5/File/Which.pm:103:       my $file = $base.$ext;
>> /home/traumschule/perl5/lib/perl5/File/Which.pm:106:       next if -d $file;
>> /home/traumschule/perl5/lib/perl5/File/Which.pm:108:       if (
>> /home/traumschule/perl5/lib/perl5/File/Which.pm:102:     for my $ext ( @PATHEXT ) {
>> /home/traumschule/perl5/lib/perl5/File/Which.pm:103:       my $file = $base.$ext;
>> /home/traumschule/perl5/lib/perl5/File/Which.pm:106:       next if -d $file;
>> /home/traumschule/perl5/lib/perl5/File/Which.pm:108:       if (
>> /home/traumschule/perl5/lib/perl5/File/Which.pm:135:   if ( $all ) {
>> /home/traumschule/perl5/lib/perl5/File/Which.pm:138:     return undef;
>> /home/traumschule/perl5/lib/perl5/File/Which.pm:47:   my ($exec) = @_;
>> /home/traumschule/perl5/lib/perl5/File/Which.pm:49:   return undef unless defined $exec;
>> /home/traumschule/perl5/lib/perl5/File/Which.pm:50:   return undef if $exec eq '';
>> /home/traumschule/perl5/lib/perl5/File/Which.pm:52:   my $all = wantarray;
>> /home/traumschule/perl5/lib/perl5/File/Which.pm:53:   my @results = ();
>> /home/traumschule/perl5/lib/perl5/File/Which.pm:56:   if ( IS_VMS ) {
>> /home/traumschule/perl5/lib/perl5/File/Which.pm:64:   if ( IS_MAC ) {
>> /home/traumschule/perl5/lib/perl5/File/Which.pm:82:   return $exec
>> /home/traumschule/perl5/lib/perl5/File/Which.pm:85:   my @path;
>> /home/traumschule/perl5/lib/perl5/File/Which.pm:86:   if($^O eq 'MSWin32') {
>> /home/traumschule/perl5/lib/perl5/File/Which.pm:95:     @path = File::Spec->path;
>> /usr/lib/i386-linux-gnu/perl/5.28/File/Spec/Unix.pm:135:     return () unless exists $ENV{PATH};
>> /usr/lib/i386-linux-gnu/perl/5.28/File/Spec/Unix.pm:136:     my @path = split(':', $ENV{PATH});
>> /usr/lib/i386-linux-gnu/perl/5.28/File/Spec/Unix.pm:137:     foreach (@path) { $_ = '.' if $_ eq '' }
>> /usr/lib/i386-linux-gnu/perl/5.28/File/Spec/Unix.pm:137:     foreach (@path) { $_ = '.' if $_ eq '' }
>> /usr/lib/i386-linux-gnu/perl/5.28/File/Spec/Unix.pm:137:     foreach (@path) { $_ = '.' if $_ eq '' }
>> /usr/lib/i386-linux-gnu/perl/5.28/File/Spec/Unix.pm:137:     foreach (@path) { $_ = '.' if $_ eq '' }
>> /usr/lib/i386-linux-gnu/perl/5.28/File/Spec/Unix.pm:137:     foreach (@path) { $_ = '.' if $_ eq '' }
>> /usr/lib/i386-linux-gnu/perl/5.28/File/Spec/Unix.pm:137:     foreach (@path) { $_ = '.' if $_ eq '' }
>> /usr/lib/i386-linux-gnu/perl/5.28/File/Spec/Unix.pm:137:     foreach (@path) { $_ = '.' if $_ eq '' }
>> /usr/lib/i386-linux-gnu/perl/5.28/File/Spec/Unix.pm:137:     foreach (@path) { $_ = '.' if $_ eq '' }
>> /usr/lib/i386-linux-gnu/perl/5.28/File/Spec/Unix.pm:138:     return @path;
>> /home/traumschule/perl5/lib/perl5/File/Which.pm:97:   if ( $IMPLICIT_CURRENT_DIR ) {
>> /home/traumschule/perl5/lib/perl5/File/Which.pm:101:   foreach my $base ( map { File::Spec->catfile($_, $exec) } @path ) {
>> /home/traumschule/perl5/lib/perl5/File/Which.pm:101:   foreach my $base ( map { File::Spec->catfile($_, $exec) } @path ) {
>> /home/traumschule/perl5/lib/perl5/File/Which.pm:101:   foreach my $base ( map { File::Spec->catfile($_, $exec) } @path ) {
>> /home/traumschule/perl5/lib/perl5/File/Which.pm:101:   foreach my $base ( map { File::Spec->catfile($_, $exec) } @path ) {
>> /home/traumschule/perl5/lib/perl5/File/Which.pm:101:   foreach my $base ( map { File::Spec->catfile($_, $exec) } @path ) {
>> /home/traumschule/perl5/lib/perl5/File/Which.pm:101:   foreach my $base ( map { File::Spec->catfile($_, $exec) } @path ) {
>> /home/traumschule/perl5/lib/perl5/File/Which.pm:101:   foreach my $base ( map { File::Spec->catfile($_, $exec) } @path ) {
>> /home/traumschule/perl5/lib/perl5/File/Which.pm:101:   foreach my $base ( map { File::Spec->catfile($_, $exec) } @path ) {
>> /home/traumschule/perl5/lib/perl5/File/Which.pm:102:     for my $ext ( @PATHEXT ) {
>> /home/traumschule/perl5/lib/perl5/File/Which.pm:103:       my $file = $base.$ext;
>> /home/traumschule/perl5/lib/perl5/File/Which.pm:106:       next if -d $file;
>> /home/traumschule/perl5/lib/perl5/File/Which.pm:108:       if (
>> /home/traumschule/perl5/lib/perl5/File/Which.pm:102:     for my $ext ( @PATHEXT ) {
>> /home/traumschule/perl5/lib/perl5/File/Which.pm:103:       my $file = $base.$ext;
>> /home/traumschule/perl5/lib/perl5/File/Which.pm:106:       next if -d $file;
>> /home/traumschule/perl5/lib/perl5/File/Which.pm:108:       if (
>> /home/traumschule/perl5/lib/perl5/File/Which.pm:102:     for my $ext ( @PATHEXT ) {
>> /home/traumschule/perl5/lib/perl5/File/Which.pm:103:       my $file = $base.$ext;
>> /home/traumschule/perl5/lib/perl5/File/Which.pm:106:       next if -d $file;
>> /home/traumschule/perl5/lib/perl5/File/Which.pm:108:       if (
>> /home/traumschule/perl5/lib/perl5/File/Which.pm:102:     for my $ext ( @PATHEXT ) {
>> /home/traumschule/perl5/lib/perl5/File/Which.pm:103:       my $file = $base.$ext;
>> /home/traumschule/perl5/lib/perl5/File/Which.pm:106:       next if -d $file;
>> /home/traumschule/perl5/lib/perl5/File/Which.pm:108:       if (
>> /home/traumschule/perl5/lib/perl5/File/Which.pm:129:         return $file unless $all;
>> /usr/local/lib/wml/TheWML/Frontends/Wml/PassesManager.pm:70:     my $args     = shift;
>> /usr/local/lib/wml/TheWML/Frontends/Wml/PassesManager.pm:81:     ];
>> /usr/local/lib/wml/TheWML/Frontends/Wml/PassesManager.pm:86:                 TheWML::Frontends::Wml::PassObj->new(
>> /usr/local/lib/wml/TheWML/Frontends/Wml/PassesManager.pm:86:                 TheWML::Frontends::Wml::PassObj->new(
>> /usr/local/lib/wml/TheWML/Frontends/Wml/PassesManager.pm:86:                 TheWML::Frontends::Wml::PassObj->new(
>> /usr/local/lib/wml/TheWML/Frontends/Wml/PassesManager.pm:86:                 TheWML::Frontends::Wml::PassObj->new(
>> /usr/local/lib/wml/TheWML/Frontends/Wml/PassesManager.pm:86:                 TheWML::Frontends::Wml::PassObj->new(
>> /usr/local/lib/wml/TheWML/Frontends/Wml/PassesManager.pm:86:                 TheWML::Frontends::Wml::PassObj->new(
>> /usr/local/lib/wml/TheWML/Frontends/Wml/PassesManager.pm:86:                 TheWML::Frontends::Wml::PassObj->new(
>> /usr/local/lib/wml/TheWML/Frontends/Wml/PassesManager.pm:86:                 TheWML::Frontends::Wml::PassObj->new(
>> /usr/local/lib/wml/TheWML/Frontends/Wml/PassesManager.pm:86:                 TheWML::Frontends::Wml::PassObj->new(
>> /usr/local/lib/wml/TheWML/Frontends/Wml/PassesManager.pm:86:                 TheWML::Frontends::Wml::PassObj->new(
>> /usr/local/lib/wml/TheWML/Frontends/Wml/PassesManager.pm:95:     my $gen_hostname = `hostname`;
>> /usr/local/lib/wml/TheWML/Frontends/Wml/PassesManager.pm:96:     $gen_hostname =~ s|\n$||;
>> /usr/local/lib/wml/TheWML/Frontends/Wml/PassesManager.pm:97:     $gen_hostname ||= 'UNKNOWN-HOSTNAME';
>> /usr/local/lib/wml/TheWML/Frontends/Wml/PassesManager.pm:99:     if ( $gen_hostname =~ /\A[a-zA-Z0-9_-]+\z/
>> /usr/local/lib/wml/TheWML/Frontends/Wml/PassesManager.pm:102:         open( my $tmp_fh, '<', $RESOLV_FN )
>> /usr/local/lib/wml/TheWML/Frontends/Wml/PassesManager.pm:105:         while ( my $l = <$tmp_fh> )
>> /usr/local/lib/wml/TheWML/Frontends/Wml/PassesManager.pm:107:             if ( my ($domain) = $l =~ m|\Adomain\s+\.?(\S+)| )
>> /usr/local/lib/wml/TheWML/Frontends/Wml/PassesManager.pm:107:             if ( my ($domain) = $l =~ m|\Adomain\s+\.?(\S+)| )
>> /usr/local/lib/wml/TheWML/Frontends/Wml/PassesManager.pm:107:             if ( my ($domain) = $l =~ m|\Adomain\s+\.?(\S+)| )
>> /usr/local/lib/wml/TheWML/Frontends/Wml/PassesManager.pm:107:             if ( my ($domain) = $l =~ m|\Adomain\s+\.?(\S+)| )
>> /usr/local/lib/wml/TheWML/Frontends/Wml/PassesManager.pm:113:         close($tmp_fh)
>> /usr/local/lib/wml/TheWML/Frontends/Wml/PassesManager.pm:116:     $self->gen_hostname($gen_hostname);
>> /usr/local/lib/wml/TheWML/Frontends/Wml/PassesManager.pm:117:     return $self;
>> /usr/local/lib/wml/TheWML/Frontends/Wml/Runner.pm:87:     $self->_tmpdir( $ENV{TMPDIR} || '/tmp' );
>> /usr/local/lib/wml/TheWML/Frontends/Wml/Runner.pm:88:     $self->_opt_D_man(
>> /usr/local/lib/wml/TheWML/Frontends/Wml/Runner.pm:94:         qw(
>> /usr/local/lib/wml/TheWML/Frontends/Wml/Runner.pm:102:     my $bindir = $self->bindir( TheWML::Config::bindir() );
>> /usr/local/lib/wml/TheWML/Config.pm:10: sub bindir   { return '/usr/local/bin'; }
>> /usr/local/lib/wml/TheWML/Frontends/Wml/Runner.pm:103:     if ( index( $ENV{PATH}, $bindir ) < 0 )
>> /usr/local/lib/wml/TheWML/Frontends/Wml/Runner.pm:108:     return $self;
>> /usr/local/lib/wml/TheWML/Frontends/Wml/Runner.pm:837:     my ( $self, $args ) = @_;
>> /usr/local/lib/wml/TheWML/Frontends/Wml/Runner.pm:838:     my $_pass_mgr = $self->_pass_mgr;
>> /usr/local/lib/wml/TheWML/Frontends/Wml/Runner.pm:839:     $self->_argv( [ @{ $args->{ARGV} } ] );
>> /usr/local/lib/wml/TheWML/Frontends/Wml/Runner.pm:839:     $self->_argv( [ @{ $args->{ARGV} } ] );
>> /usr/local/lib/wml/TheWML/Frontends/Wml/Runner.pm:840:     $_pass_mgr->_opt_v(-1);
>> /usr/local/lib/wml/TheWML/Frontends/Wml/Runner.pm:841:     $self->_opt_E( [] );
>> /usr/local/lib/wml/TheWML/Frontends/Wml/Runner.pm:842:     $self->_opt_I( [] );
>> /usr/local/lib/wml/TheWML/Frontends/Wml/Runner.pm:843:     $self->_opt_h(0);
>> /usr/local/lib/wml/TheWML/Frontends/Wml/Runner.pm:844:     $self->_reset_opts;
>> /usr/local/lib/wml/TheWML/Frontends/Wml/Runner.pm:816:     my $self = shift;
>> /usr/local/lib/wml/TheWML/Frontends/Wml/Runner.pm:818:     $self->_pass_mgr->_opt_s(0);
>> /usr/local/lib/wml/TheWML/Frontends/Wml/Runner.pm:819:     $self->_opt_D( [] );
>> /usr/local/lib/wml/TheWML/Frontends/Wml/Runner.pm:78:     return shift->_opt_D_man->_opt_D(@_);
>> /usr/local/lib/wml/TheWML/Frontends/Wml/Runner.pm:820:     $self->_opt_M('-');
>> /usr/local/lib/wml/TheWML/Frontends/Wml/Runner.pm:821:     $self->_opt_O('');
>> /usr/local/lib/wml/TheWML/Frontends/Wml/Runner.pm:822:     $self->_opt_P( [] );
>> /usr/local/lib/wml/TheWML/Frontends/Wml/Runner.pm:823:     $self->_opt_V(-1);
>> /usr/local/lib/wml/TheWML/Frontends/Wml/Runner.pm:824:     $self->_opt_W( [] );
>> /usr/local/lib/wml/TheWML/Frontends/Wml/Runner.pm:825:     $self->_opt_i( [] );
>> /usr/local/lib/wml/TheWML/Frontends/Wml/Runner.pm:826:     $self->_opt_n(0);
>> /usr/local/lib/wml/TheWML/Frontends/Wml/Runner.pm:827:     $self->_opt_o( [] );
>> /usr/local/lib/wml/TheWML/Frontends/Wml/Runner.pm:828:     $self->_opt_p( [] );
>> /usr/local/lib/wml/TheWML/Frontends/Wml/Runner.pm:829:     $self->_opt_q(0);
>> /usr/local/lib/wml/TheWML/Frontends/Wml/Runner.pm:830:     $self->_opt_t(0);
>> /usr/local/lib/wml/TheWML/Frontends/Wml/Runner.pm:831:     return;
>> /usr/local/lib/wml/TheWML/Frontends/Wml/Runner.pm:846:     my @temp_argv = @{ $self->_argv };
>> /usr/local/lib/wml/TheWML/Frontends/Wml/Runner.pm:846:     my @temp_argv = @{ $self->_argv };
>> /usr/local/lib/wml/TheWML/Frontends/Wml/Runner.pm:847:     $self->_process_options( \@temp_argv, [] );
>> /usr/local/lib/wml/TheWML/Frontends/Wml/Runner.pm:762:     my ( $self, $my_argv, $_opt_D ) = @_;
>> /usr/local/lib/wml/TheWML/Frontends/Wml/Runner.pm:763:     my $_pass_mgr = $self->_pass_mgr;
>> /usr/local/lib/wml/TheWML/Frontends/Wml/Runner.pm:766:     };
>> /usr/local/lib/wml/TheWML/Frontends/Wml/Runner.pm:767:     $Getopt::Long::bundling      = 1;
>> /usr/local/lib/wml/TheWML/Frontends/Wml/Runner.pm:768:     $Getopt::Long::getopt_compat = 0;
>> /usr/local/lib/wml/TheWML/Frontends/Wml/Runner.pm:769:     my %list_options = (
>> /usr/local/lib/wml/TheWML/Frontends/Wml/Runner.pm:778:     if (
>> /usr/local/lib/wml/TheWML/CmdLine/Base.pm:10:     my ( $self, $opt ) = @_;
>> /usr/local/lib/wml/TheWML/CmdLine/Base.pm:12:     return sub { my ( undef, $v ) = @_; $self->$opt($v); },;
>> /usr/local/lib/wml/TheWML/CmdLine/Base.pm:10:     my ( $self, $opt ) = @_;
>> /usr/local/lib/wml/TheWML/CmdLine/Base.pm:12:     return sub { my ( undef, $v ) = @_; $self->$opt($v); },;
>> /usr/local/lib/wml/TheWML/CmdLine/Base.pm:10:     my ( $self, $opt ) = @_;
>> /usr/local/lib/wml/TheWML/CmdLine/Base.pm:12:     return sub { my ( undef, $v ) = @_; $self->$opt($v); },;
>> /usr/local/lib/wml/TheWML/CmdLine/Base.pm:10:     my ( $self, $opt ) = @_;
>> /usr/local/lib/wml/TheWML/CmdLine/Base.pm:12:     return sub { my ( undef, $v ) = @_; $self->$opt($v); },;
>> /usr/local/lib/wml/TheWML/CmdLine/Base.pm:10:     my ( $self, $opt ) = @_;
>> /usr/local/lib/wml/TheWML/CmdLine/Base.pm:12:     return sub { my ( undef, $v ) = @_; $self->$opt($v); },;
>> /usr/local/lib/wml/TheWML/CmdLine/Base.pm:10:     my ( $self, $opt ) = @_;
>> /usr/local/lib/wml/TheWML/CmdLine/Base.pm:12:     return sub { my ( undef, $v ) = @_; $self->$opt($v); },;
>> /usr/local/lib/wml/TheWML/CmdLine/Base.pm:10:     my ( $self, $opt ) = @_;
>> /usr/local/lib/wml/TheWML/CmdLine/Base.pm:12:     return sub { my ( undef, $v ) = @_; $self->$opt($v); },;
>> /usr/local/lib/wml/TheWML/CmdLine/Base.pm:10:     my ( $self, $opt ) = @_;
>> /usr/local/lib/wml/TheWML/CmdLine/Base.pm:12:     return sub { my ( undef, $v ) = @_; $self->$opt($v); },;
>> /usr/local/lib/wml/TheWML/CmdLine/Base.pm:10:     my ( $self, $opt ) = @_;
>> /usr/local/lib/wml/TheWML/CmdLine/Base.pm:12:     return sub { my ( undef, $v ) = @_; $self->$opt($v); },;
>> /usr/local/lib/wml/TheWML/CmdLine/Base.pm:10:     my ( $self, $opt ) = @_;
>> /usr/local/lib/wml/TheWML/CmdLine/Base.pm:12:     return sub { my ( undef, $v ) = @_; $self->$opt($v); },;
>> /usr/local/lib/wml/TheWML/CmdLine/Base.pm:10:     my ( $self, $opt ) = @_;
>> /usr/local/lib/wml/TheWML/CmdLine/Base.pm:12:     return sub { my ( undef, $v ) = @_; $self->$opt($v); },;
>> /usr/share/perl/5.28/Getopt/Long.pm:289:     my ($argv, @optionlist) = @_;   # local copy of the option descriptions
>> /usr/share/perl/5.28/Getopt/Long.pm:290:     my $argend = '--';      # option list terminator
>> /usr/share/perl/5.28/Getopt/Long.pm:291:     my %opctl = ();     # table of option specs
>> /usr/share/perl/5.28/Getopt/Long.pm:292:     my $pkg = $caller || (caller)[0];   # current context
>> /usr/share/perl/5.28/Getopt/Long.pm:294:     my @ret = ();       # accum for non-options
>> /usr/share/perl/5.28/Getopt/Long.pm:295:     my %linkage;        # linkage
>> /usr/share/perl/5.28/Getopt/Long.pm:296:     my $userlinkage;        # user supplied HASH
>> /usr/share/perl/5.28/Getopt/Long.pm:297:     my $opt;            # current option
>> /usr/share/perl/5.28/Getopt/Long.pm:298:     my $prefix = $genprefix;    # current prefix
>> /usr/share/perl/5.28/Getopt/Long.pm:300:     $error = '';
>> /usr/share/perl/5.28/Getopt/Long.pm:302:     if ( $debug ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:332:     $userlinkage = undef;
>> /usr/share/perl/5.28/Getopt/Long.pm:333:     if ( @optionlist && ref($optionlist[0]) and
>> /usr/share/perl/5.28/Getopt/Long.pm:342:     if ( @optionlist && $optionlist[0] =~ /^\W+$/
>> /usr/share/perl/5.28/Getopt/Long.pm:354:     %opctl = ();
>> /usr/share/perl/5.28/Getopt/Long.pm:355:     while ( @optionlist ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:356:     my $opt = shift (@optionlist);
>> /usr/share/perl/5.28/Getopt/Long.pm:358:     unless ( defined($opt) ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:364:     $opt = $+ if $opt =~ /^$prefix+(.*)$/s;
>> /usr/share/perl/5.28/Getopt/Long.pm:366:     if ( $opt eq '<>' ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:386:     my ($name, $orig) = ParseOptionSpec ($opt, \%opctl);
>> /usr/share/perl/5.28/Getopt/Long.pm:801:     my ($opt, $opctl) = @_;
>> /usr/share/perl/5.28/Getopt/Long.pm:804:     if ( $opt !~ m;^
>> /usr/share/perl/5.28/Getopt/Long.pm:827:     my ($names, $spec) = ($1, $2);
>> /usr/share/perl/5.28/Getopt/Long.pm:828:     $spec = '' unless defined $spec;
>> /usr/share/perl/5.28/Getopt/Long.pm:836:     my $orig;
>> /usr/share/perl/5.28/Getopt/Long.pm:838:     my @names;
>> /usr/share/perl/5.28/Getopt/Long.pm:839:     if ( defined $names ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:840:     @names =  split (/\|/, $names);
>> /usr/share/perl/5.28/Getopt/Long.pm:841:     $orig = $names[0];
>> /usr/share/perl/5.28/Getopt/Long.pm:849:     my $entry;
>> /usr/share/perl/5.28/Getopt/Long.pm:850:     if ( $spec eq '' || $spec eq '+' || $spec eq '!' ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:866:     my ($mand, $type, $dest) =
>> /usr/share/perl/5.28/Getopt/Long.pm:868:     return (undef, "Cannot repeat while bundling: \"$opt\"\n")
>> /usr/share/perl/5.28/Getopt/Long.pm:870:     my ($mi, $cm, $ma) = ($5, $6, $7);
>> /usr/share/perl/5.28/Getopt/Long.pm:871:     return (undef, "{0} is useless in option spec: \"$opt\"\n")
>> /usr/share/perl/5.28/Getopt/Long.pm:874:     $type = 'i' if $type eq 'n';
>> /usr/share/perl/5.28/Getopt/Long.pm:875:     $dest ||= '$';
>> /usr/share/perl/5.28/Getopt/Long.pm:876:     $dest = $dest eq '@' ? CTL_DEST_ARRAY
>> /usr/share/perl/5.28/Getopt/Long.pm:879:     $mi = $mand eq '=' ? 1 : 0 unless defined $mi;
>> /usr/share/perl/5.28/Getopt/Long.pm:881:     $mand = $mi ? '=' : ':';
>> /usr/share/perl/5.28/Getopt/Long.pm:883:     $ma = $mi ? $mi : 1 unless defined $ma || defined $cm;
>> /usr/share/perl/5.28/Getopt/Long.pm:884:     return (undef, "Max must be greater than zero in option spec: \"$opt\"\n")
>> /usr/share/perl/5.28/Getopt/Long.pm:886:     return (undef, "Max less than min in option spec: \"$opt\"\n")
>> /usr/share/perl/5.28/Getopt/Long.pm:890:     $entry = [$type,$orig,undef,$dest,$mi,$ma||-1];
>> /usr/share/perl/5.28/Getopt/Long.pm:894:     my $dups = '';
>> /usr/share/perl/5.28/Getopt/Long.pm:895:     foreach ( @names ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:897:     $_ = lc ($_)
>> /usr/share/perl/5.28/Getopt/Long.pm:900:     if ( exists $opctl->{$_} ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:904:     if ( $spec eq '!' ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:911:         $opctl->{$_} = $entry;
>> /usr/share/perl/5.28/Getopt/Long.pm:897:     $_ = lc ($_)
>> /usr/share/perl/5.28/Getopt/Long.pm:900:     if ( exists $opctl->{$_} ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:904:     if ( $spec eq '!' ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:911:         $opctl->{$_} = $entry;
>> /usr/share/perl/5.28/Getopt/Long.pm:915:     if ( $dups && $^W ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:920:     ($names[0], $orig);
>> /usr/share/perl/5.28/Getopt/Long.pm:387:     unless ( defined $name ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:398:     if ( defined $userlinkage ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:415:     if ( @optionlist > 0 && ref($optionlist[0]) ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:416:         print STDERR ("=> link \"$orig\" to $optionlist[0]\n")
>> /usr/share/perl/5.28/Getopt/Long.pm:418:         my $rl = ref($linkage{$orig} = shift (@optionlist));
>> /usr/share/perl/5.28/Getopt/Long.pm:420:         if ( $rl eq "ARRAY" ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:421:         $opctl{$name}[CTL_DEST] = CTL_DEST_ARRAY;
>> /usr/share/perl/5.28/Getopt/Long.pm:466:     if ( $opctl{$name}[CTL_TYPE] eq 'I'
>> /usr/share/perl/5.28/Getopt/Long.pm:356:     my $opt = shift (@optionlist);
>> /usr/share/perl/5.28/Getopt/Long.pm:358:     unless ( defined($opt) ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:364:     $opt = $+ if $opt =~ /^$prefix+(.*)$/s;
>> /usr/share/perl/5.28/Getopt/Long.pm:366:     if ( $opt eq '<>' ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:386:     my ($name, $orig) = ParseOptionSpec ($opt, \%opctl);
>> /usr/share/perl/5.28/Getopt/Long.pm:801:     my ($opt, $opctl) = @_;
>> /usr/share/perl/5.28/Getopt/Long.pm:804:     if ( $opt !~ m;^
>> /usr/share/perl/5.28/Getopt/Long.pm:827:     my ($names, $spec) = ($1, $2);
>> /usr/share/perl/5.28/Getopt/Long.pm:828:     $spec = '' unless defined $spec;
>> /usr/share/perl/5.28/Getopt/Long.pm:836:     my $orig;
>> /usr/share/perl/5.28/Getopt/Long.pm:838:     my @names;
>> /usr/share/perl/5.28/Getopt/Long.pm:839:     if ( defined $names ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:840:     @names =  split (/\|/, $names);
>> /usr/share/perl/5.28/Getopt/Long.pm:841:     $orig = $names[0];
>> /usr/share/perl/5.28/Getopt/Long.pm:849:     my $entry;
>> /usr/share/perl/5.28/Getopt/Long.pm:850:     if ( $spec eq '' || $spec eq '+' || $spec eq '!' ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:866:     my ($mand, $type, $dest) =
>> /usr/share/perl/5.28/Getopt/Long.pm:868:     return (undef, "Cannot repeat while bundling: \"$opt\"\n")
>> /usr/share/perl/5.28/Getopt/Long.pm:870:     my ($mi, $cm, $ma) = ($5, $6, $7);
>> /usr/share/perl/5.28/Getopt/Long.pm:871:     return (undef, "{0} is useless in option spec: \"$opt\"\n")
>> /usr/share/perl/5.28/Getopt/Long.pm:874:     $type = 'i' if $type eq 'n';
>> /usr/share/perl/5.28/Getopt/Long.pm:875:     $dest ||= '$';
>> /usr/share/perl/5.28/Getopt/Long.pm:876:     $dest = $dest eq '@' ? CTL_DEST_ARRAY
>> /usr/share/perl/5.28/Getopt/Long.pm:879:     $mi = $mand eq '=' ? 1 : 0 unless defined $mi;
>> /usr/share/perl/5.28/Getopt/Long.pm:881:     $mand = $mi ? '=' : ':';
>> /usr/share/perl/5.28/Getopt/Long.pm:883:     $ma = $mi ? $mi : 1 unless defined $ma || defined $cm;
>> /usr/share/perl/5.28/Getopt/Long.pm:884:     return (undef, "Max must be greater than zero in option spec: \"$opt\"\n")
>> /usr/share/perl/5.28/Getopt/Long.pm:886:     return (undef, "Max less than min in option spec: \"$opt\"\n")
>> /usr/share/perl/5.28/Getopt/Long.pm:890:     $entry = [$type,$orig,undef,$dest,$mi,$ma||-1];
>> /usr/share/perl/5.28/Getopt/Long.pm:894:     my $dups = '';
>> /usr/share/perl/5.28/Getopt/Long.pm:895:     foreach ( @names ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:897:     $_ = lc ($_)
>> /usr/share/perl/5.28/Getopt/Long.pm:900:     if ( exists $opctl->{$_} ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:904:     if ( $spec eq '!' ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:911:         $opctl->{$_} = $entry;
>> /usr/share/perl/5.28/Getopt/Long.pm:897:     $_ = lc ($_)
>> /usr/share/perl/5.28/Getopt/Long.pm:900:     if ( exists $opctl->{$_} ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:904:     if ( $spec eq '!' ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:911:         $opctl->{$_} = $entry;
>> /usr/share/perl/5.28/Getopt/Long.pm:915:     if ( $dups && $^W ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:920:     ($names[0], $orig);
>> /usr/share/perl/5.28/Getopt/Long.pm:387:     unless ( defined $name ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:398:     if ( defined $userlinkage ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:415:     if ( @optionlist > 0 && ref($optionlist[0]) ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:416:         print STDERR ("=> link \"$orig\" to $optionlist[0]\n")
>> /usr/share/perl/5.28/Getopt/Long.pm:418:         my $rl = ref($linkage{$orig} = shift (@optionlist));
>> /usr/share/perl/5.28/Getopt/Long.pm:420:         if ( $rl eq "ARRAY" ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:421:         $opctl{$name}[CTL_DEST] = CTL_DEST_ARRAY;
>> /usr/share/perl/5.28/Getopt/Long.pm:466:     if ( $opctl{$name}[CTL_TYPE] eq 'I'
>> /usr/share/perl/5.28/Getopt/Long.pm:356:     my $opt = shift (@optionlist);
>> /usr/share/perl/5.28/Getopt/Long.pm:358:     unless ( defined($opt) ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:364:     $opt = $+ if $opt =~ /^$prefix+(.*)$/s;
>> /usr/share/perl/5.28/Getopt/Long.pm:366:     if ( $opt eq '<>' ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:386:     my ($name, $orig) = ParseOptionSpec ($opt, \%opctl);
>> /usr/share/perl/5.28/Getopt/Long.pm:801:     my ($opt, $opctl) = @_;
>> /usr/share/perl/5.28/Getopt/Long.pm:804:     if ( $opt !~ m;^
>> /usr/share/perl/5.28/Getopt/Long.pm:827:     my ($names, $spec) = ($1, $2);
>> /usr/share/perl/5.28/Getopt/Long.pm:828:     $spec = '' unless defined $spec;
>> /usr/share/perl/5.28/Getopt/Long.pm:836:     my $orig;
>> /usr/share/perl/5.28/Getopt/Long.pm:838:     my @names;
>> /usr/share/perl/5.28/Getopt/Long.pm:839:     if ( defined $names ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:840:     @names =  split (/\|/, $names);
>> /usr/share/perl/5.28/Getopt/Long.pm:841:     $orig = $names[0];
>> /usr/share/perl/5.28/Getopt/Long.pm:849:     my $entry;
>> /usr/share/perl/5.28/Getopt/Long.pm:850:     if ( $spec eq '' || $spec eq '+' || $spec eq '!' ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:866:     my ($mand, $type, $dest) =
>> /usr/share/perl/5.28/Getopt/Long.pm:868:     return (undef, "Cannot repeat while bundling: \"$opt\"\n")
>> /usr/share/perl/5.28/Getopt/Long.pm:870:     my ($mi, $cm, $ma) = ($5, $6, $7);
>> /usr/share/perl/5.28/Getopt/Long.pm:871:     return (undef, "{0} is useless in option spec: \"$opt\"\n")
>> /usr/share/perl/5.28/Getopt/Long.pm:874:     $type = 'i' if $type eq 'n';
>> /usr/share/perl/5.28/Getopt/Long.pm:875:     $dest ||= '$';
>> /usr/share/perl/5.28/Getopt/Long.pm:876:     $dest = $dest eq '@' ? CTL_DEST_ARRAY
>> /usr/share/perl/5.28/Getopt/Long.pm:879:     $mi = $mand eq '=' ? 1 : 0 unless defined $mi;
>> /usr/share/perl/5.28/Getopt/Long.pm:881:     $mand = $mi ? '=' : ':';
>> /usr/share/perl/5.28/Getopt/Long.pm:883:     $ma = $mi ? $mi : 1 unless defined $ma || defined $cm;
>> /usr/share/perl/5.28/Getopt/Long.pm:884:     return (undef, "Max must be greater than zero in option spec: \"$opt\"\n")
>> /usr/share/perl/5.28/Getopt/Long.pm:886:     return (undef, "Max less than min in option spec: \"$opt\"\n")
>> /usr/share/perl/5.28/Getopt/Long.pm:890:     $entry = [$type,$orig,undef,$dest,$mi,$ma||-1];
>> /usr/share/perl/5.28/Getopt/Long.pm:894:     my $dups = '';
>> /usr/share/perl/5.28/Getopt/Long.pm:895:     foreach ( @names ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:897:     $_ = lc ($_)
>> /usr/share/perl/5.28/Getopt/Long.pm:900:     if ( exists $opctl->{$_} ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:904:     if ( $spec eq '!' ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:911:         $opctl->{$_} = $entry;
>> /usr/share/perl/5.28/Getopt/Long.pm:897:     $_ = lc ($_)
>> /usr/share/perl/5.28/Getopt/Long.pm:900:     if ( exists $opctl->{$_} ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:904:     if ( $spec eq '!' ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:911:         $opctl->{$_} = $entry;
>> /usr/share/perl/5.28/Getopt/Long.pm:915:     if ( $dups && $^W ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:920:     ($names[0], $orig);
>> /usr/share/perl/5.28/Getopt/Long.pm:387:     unless ( defined $name ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:398:     if ( defined $userlinkage ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:415:     if ( @optionlist > 0 && ref($optionlist[0]) ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:416:         print STDERR ("=> link \"$orig\" to $optionlist[0]\n")
>> /usr/share/perl/5.28/Getopt/Long.pm:418:         my $rl = ref($linkage{$orig} = shift (@optionlist));
>> /usr/share/perl/5.28/Getopt/Long.pm:420:         if ( $rl eq "ARRAY" ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:421:         $opctl{$name}[CTL_DEST] = CTL_DEST_ARRAY;
>> /usr/share/perl/5.28/Getopt/Long.pm:466:     if ( $opctl{$name}[CTL_TYPE] eq 'I'
>> /usr/share/perl/5.28/Getopt/Long.pm:356:     my $opt = shift (@optionlist);
>> /usr/share/perl/5.28/Getopt/Long.pm:358:     unless ( defined($opt) ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:364:     $opt = $+ if $opt =~ /^$prefix+(.*)$/s;
>> /usr/share/perl/5.28/Getopt/Long.pm:366:     if ( $opt eq '<>' ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:386:     my ($name, $orig) = ParseOptionSpec ($opt, \%opctl);
>> /usr/share/perl/5.28/Getopt/Long.pm:801:     my ($opt, $opctl) = @_;
>> /usr/share/perl/5.28/Getopt/Long.pm:804:     if ( $opt !~ m;^
>> /usr/share/perl/5.28/Getopt/Long.pm:827:     my ($names, $spec) = ($1, $2);
>> /usr/share/perl/5.28/Getopt/Long.pm:828:     $spec = '' unless defined $spec;
>> /usr/share/perl/5.28/Getopt/Long.pm:836:     my $orig;
>> /usr/share/perl/5.28/Getopt/Long.pm:838:     my @names;
>> /usr/share/perl/5.28/Getopt/Long.pm:839:     if ( defined $names ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:840:     @names =  split (/\|/, $names);
>> /usr/share/perl/5.28/Getopt/Long.pm:841:     $orig = $names[0];
>> /usr/share/perl/5.28/Getopt/Long.pm:849:     my $entry;
>> /usr/share/perl/5.28/Getopt/Long.pm:850:     if ( $spec eq '' || $spec eq '+' || $spec eq '!' ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:866:     my ($mand, $type, $dest) =
>> /usr/share/perl/5.28/Getopt/Long.pm:868:     return (undef, "Cannot repeat while bundling: \"$opt\"\n")
>> /usr/share/perl/5.28/Getopt/Long.pm:870:     my ($mi, $cm, $ma) = ($5, $6, $7);
>> /usr/share/perl/5.28/Getopt/Long.pm:871:     return (undef, "{0} is useless in option spec: \"$opt\"\n")
>> /usr/share/perl/5.28/Getopt/Long.pm:874:     $type = 'i' if $type eq 'n';
>> /usr/share/perl/5.28/Getopt/Long.pm:875:     $dest ||= '$';
>> /usr/share/perl/5.28/Getopt/Long.pm:876:     $dest = $dest eq '@' ? CTL_DEST_ARRAY
>> /usr/share/perl/5.28/Getopt/Long.pm:879:     $mi = $mand eq '=' ? 1 : 0 unless defined $mi;
>> /usr/share/perl/5.28/Getopt/Long.pm:881:     $mand = $mi ? '=' : ':';
>> /usr/share/perl/5.28/Getopt/Long.pm:883:     $ma = $mi ? $mi : 1 unless defined $ma || defined $cm;
>> /usr/share/perl/5.28/Getopt/Long.pm:884:     return (undef, "Max must be greater than zero in option spec: \"$opt\"\n")
>> /usr/share/perl/5.28/Getopt/Long.pm:886:     return (undef, "Max less than min in option spec: \"$opt\"\n")
>> /usr/share/perl/5.28/Getopt/Long.pm:890:     $entry = [$type,$orig,undef,$dest,$mi,$ma||-1];
>> /usr/share/perl/5.28/Getopt/Long.pm:894:     my $dups = '';
>> /usr/share/perl/5.28/Getopt/Long.pm:895:     foreach ( @names ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:897:     $_ = lc ($_)
>> /usr/share/perl/5.28/Getopt/Long.pm:900:     if ( exists $opctl->{$_} ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:904:     if ( $spec eq '!' ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:911:         $opctl->{$_} = $entry;
>> /usr/share/perl/5.28/Getopt/Long.pm:897:     $_ = lc ($_)
>> /usr/share/perl/5.28/Getopt/Long.pm:900:     if ( exists $opctl->{$_} ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:904:     if ( $spec eq '!' ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:911:         $opctl->{$_} = $entry;
>> /usr/share/perl/5.28/Getopt/Long.pm:915:     if ( $dups && $^W ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:920:     ($names[0], $orig);
>> /usr/share/perl/5.28/Getopt/Long.pm:387:     unless ( defined $name ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:398:     if ( defined $userlinkage ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:415:     if ( @optionlist > 0 && ref($optionlist[0]) ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:416:         print STDERR ("=> link \"$orig\" to $optionlist[0]\n")
>> /usr/share/perl/5.28/Getopt/Long.pm:418:         my $rl = ref($linkage{$orig} = shift (@optionlist));
>> /usr/share/perl/5.28/Getopt/Long.pm:420:         if ( $rl eq "ARRAY" ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:421:         $opctl{$name}[CTL_DEST] = CTL_DEST_ARRAY;
>> /usr/share/perl/5.28/Getopt/Long.pm:466:     if ( $opctl{$name}[CTL_TYPE] eq 'I'
>> /usr/share/perl/5.28/Getopt/Long.pm:356:     my $opt = shift (@optionlist);
>> /usr/share/perl/5.28/Getopt/Long.pm:358:     unless ( defined($opt) ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:364:     $opt = $+ if $opt =~ /^$prefix+(.*)$/s;
>> /usr/share/perl/5.28/Getopt/Long.pm:366:     if ( $opt eq '<>' ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:386:     my ($name, $orig) = ParseOptionSpec ($opt, \%opctl);
>> /usr/share/perl/5.28/Getopt/Long.pm:801:     my ($opt, $opctl) = @_;
>> /usr/share/perl/5.28/Getopt/Long.pm:804:     if ( $opt !~ m;^
>> /usr/share/perl/5.28/Getopt/Long.pm:827:     my ($names, $spec) = ($1, $2);
>> /usr/share/perl/5.28/Getopt/Long.pm:828:     $spec = '' unless defined $spec;
>> /usr/share/perl/5.28/Getopt/Long.pm:836:     my $orig;
>> /usr/share/perl/5.28/Getopt/Long.pm:838:     my @names;
>> /usr/share/perl/5.28/Getopt/Long.pm:839:     if ( defined $names ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:840:     @names =  split (/\|/, $names);
>> /usr/share/perl/5.28/Getopt/Long.pm:841:     $orig = $names[0];
>> /usr/share/perl/5.28/Getopt/Long.pm:849:     my $entry;
>> /usr/share/perl/5.28/Getopt/Long.pm:850:     if ( $spec eq '' || $spec eq '+' || $spec eq '!' ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:866:     my ($mand, $type, $dest) =
>> /usr/share/perl/5.28/Getopt/Long.pm:868:     return (undef, "Cannot repeat while bundling: \"$opt\"\n")
>> /usr/share/perl/5.28/Getopt/Long.pm:870:     my ($mi, $cm, $ma) = ($5, $6, $7);
>> /usr/share/perl/5.28/Getopt/Long.pm:871:     return (undef, "{0} is useless in option spec: \"$opt\"\n")
>> /usr/share/perl/5.28/Getopt/Long.pm:874:     $type = 'i' if $type eq 'n';
>> /usr/share/perl/5.28/Getopt/Long.pm:875:     $dest ||= '$';
>> /usr/share/perl/5.28/Getopt/Long.pm:876:     $dest = $dest eq '@' ? CTL_DEST_ARRAY
>> /usr/share/perl/5.28/Getopt/Long.pm:879:     $mi = $mand eq '=' ? 1 : 0 unless defined $mi;
>> /usr/share/perl/5.28/Getopt/Long.pm:881:     $mand = $mi ? '=' : ':';
>> /usr/share/perl/5.28/Getopt/Long.pm:883:     $ma = $mi ? $mi : 1 unless defined $ma || defined $cm;
>> /usr/share/perl/5.28/Getopt/Long.pm:884:     return (undef, "Max must be greater than zero in option spec: \"$opt\"\n")
>> /usr/share/perl/5.28/Getopt/Long.pm:886:     return (undef, "Max less than min in option spec: \"$opt\"\n")
>> /usr/share/perl/5.28/Getopt/Long.pm:890:     $entry = [$type,$orig,undef,$dest,$mi,$ma||-1];
>> /usr/share/perl/5.28/Getopt/Long.pm:894:     my $dups = '';
>> /usr/share/perl/5.28/Getopt/Long.pm:895:     foreach ( @names ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:897:     $_ = lc ($_)
>> /usr/share/perl/5.28/Getopt/Long.pm:900:     if ( exists $opctl->{$_} ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:904:     if ( $spec eq '!' ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:911:         $opctl->{$_} = $entry;
>> /usr/share/perl/5.28/Getopt/Long.pm:897:     $_ = lc ($_)
>> /usr/share/perl/5.28/Getopt/Long.pm:900:     if ( exists $opctl->{$_} ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:904:     if ( $spec eq '!' ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:911:         $opctl->{$_} = $entry;
>> /usr/share/perl/5.28/Getopt/Long.pm:915:     if ( $dups && $^W ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:920:     ($names[0], $orig);
>> /usr/share/perl/5.28/Getopt/Long.pm:387:     unless ( defined $name ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:398:     if ( defined $userlinkage ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:415:     if ( @optionlist > 0 && ref($optionlist[0]) ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:416:         print STDERR ("=> link \"$orig\" to $optionlist[0]\n")
>> /usr/share/perl/5.28/Getopt/Long.pm:418:         my $rl = ref($linkage{$orig} = shift (@optionlist));
>> /usr/share/perl/5.28/Getopt/Long.pm:420:         if ( $rl eq "ARRAY" ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:421:         $opctl{$name}[CTL_DEST] = CTL_DEST_ARRAY;
>> /usr/share/perl/5.28/Getopt/Long.pm:466:     if ( $opctl{$name}[CTL_TYPE] eq 'I'
>> /usr/share/perl/5.28/Getopt/Long.pm:356:     my $opt = shift (@optionlist);
>> /usr/share/perl/5.28/Getopt/Long.pm:358:     unless ( defined($opt) ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:364:     $opt = $+ if $opt =~ /^$prefix+(.*)$/s;
>> /usr/share/perl/5.28/Getopt/Long.pm:366:     if ( $opt eq '<>' ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:386:     my ($name, $orig) = ParseOptionSpec ($opt, \%opctl);
>> /usr/share/perl/5.28/Getopt/Long.pm:801:     my ($opt, $opctl) = @_;
>> /usr/share/perl/5.28/Getopt/Long.pm:804:     if ( $opt !~ m;^
>> /usr/share/perl/5.28/Getopt/Long.pm:827:     my ($names, $spec) = ($1, $2);
>> /usr/share/perl/5.28/Getopt/Long.pm:828:     $spec = '' unless defined $spec;
>> /usr/share/perl/5.28/Getopt/Long.pm:836:     my $orig;
>> /usr/share/perl/5.28/Getopt/Long.pm:838:     my @names;
>> /usr/share/perl/5.28/Getopt/Long.pm:839:     if ( defined $names ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:840:     @names =  split (/\|/, $names);
>> /usr/share/perl/5.28/Getopt/Long.pm:841:     $orig = $names[0];
>> /usr/share/perl/5.28/Getopt/Long.pm:849:     my $entry;
>> /usr/share/perl/5.28/Getopt/Long.pm:850:     if ( $spec eq '' || $spec eq '+' || $spec eq '!' ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:866:     my ($mand, $type, $dest) =
>> /usr/share/perl/5.28/Getopt/Long.pm:868:     return (undef, "Cannot repeat while bundling: \"$opt\"\n")
>> /usr/share/perl/5.28/Getopt/Long.pm:870:     my ($mi, $cm, $ma) = ($5, $6, $7);
>> /usr/share/perl/5.28/Getopt/Long.pm:871:     return (undef, "{0} is useless in option spec: \"$opt\"\n")
>> /usr/share/perl/5.28/Getopt/Long.pm:874:     $type = 'i' if $type eq 'n';
>> /usr/share/perl/5.28/Getopt/Long.pm:875:     $dest ||= '$';
>> /usr/share/perl/5.28/Getopt/Long.pm:876:     $dest = $dest eq '@' ? CTL_DEST_ARRAY
>> /usr/share/perl/5.28/Getopt/Long.pm:879:     $mi = $mand eq '=' ? 1 : 0 unless defined $mi;
>> /usr/share/perl/5.28/Getopt/Long.pm:881:     $mand = $mi ? '=' : ':';
>> /usr/share/perl/5.28/Getopt/Long.pm:883:     $ma = $mi ? $mi : 1 unless defined $ma || defined $cm;
>> /usr/share/perl/5.28/Getopt/Long.pm:884:     return (undef, "Max must be greater than zero in option spec: \"$opt\"\n")
>> /usr/share/perl/5.28/Getopt/Long.pm:886:     return (undef, "Max less than min in option spec: \"$opt\"\n")
>> /usr/share/perl/5.28/Getopt/Long.pm:890:     $entry = [$type,$orig,undef,$dest,$mi,$ma||-1];
>> /usr/share/perl/5.28/Getopt/Long.pm:894:     my $dups = '';
>> /usr/share/perl/5.28/Getopt/Long.pm:895:     foreach ( @names ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:897:     $_ = lc ($_)
>> /usr/share/perl/5.28/Getopt/Long.pm:900:     if ( exists $opctl->{$_} ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:904:     if ( $spec eq '!' ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:911:         $opctl->{$_} = $entry;
>> /usr/share/perl/5.28/Getopt/Long.pm:897:     $_ = lc ($_)
>> /usr/share/perl/5.28/Getopt/Long.pm:900:     if ( exists $opctl->{$_} ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:904:     if ( $spec eq '!' ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:911:         $opctl->{$_} = $entry;
>> /usr/share/perl/5.28/Getopt/Long.pm:915:     if ( $dups && $^W ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:920:     ($names[0], $orig);
>> /usr/share/perl/5.28/Getopt/Long.pm:387:     unless ( defined $name ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:398:     if ( defined $userlinkage ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:415:     if ( @optionlist > 0 && ref($optionlist[0]) ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:416:         print STDERR ("=> link \"$orig\" to $optionlist[0]\n")
>> /usr/share/perl/5.28/Getopt/Long.pm:418:         my $rl = ref($linkage{$orig} = shift (@optionlist));
>> /usr/share/perl/5.28/Getopt/Long.pm:420:         if ( $rl eq "ARRAY" ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:421:         $opctl{$name}[CTL_DEST] = CTL_DEST_ARRAY;
>> /usr/share/perl/5.28/Getopt/Long.pm:466:     if ( $opctl{$name}[CTL_TYPE] eq 'I'
>> /usr/share/perl/5.28/Getopt/Long.pm:356:     my $opt = shift (@optionlist);
>> /usr/share/perl/5.28/Getopt/Long.pm:358:     unless ( defined($opt) ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:364:     $opt = $+ if $opt =~ /^$prefix+(.*)$/s;
>> /usr/share/perl/5.28/Getopt/Long.pm:366:     if ( $opt eq '<>' ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:386:     my ($name, $orig) = ParseOptionSpec ($opt, \%opctl);
>> /usr/share/perl/5.28/Getopt/Long.pm:801:     my ($opt, $opctl) = @_;
>> /usr/share/perl/5.28/Getopt/Long.pm:804:     if ( $opt !~ m;^
>> /usr/share/perl/5.28/Getopt/Long.pm:827:     my ($names, $spec) = ($1, $2);
>> /usr/share/perl/5.28/Getopt/Long.pm:828:     $spec = '' unless defined $spec;
>> /usr/share/perl/5.28/Getopt/Long.pm:836:     my $orig;
>> /usr/share/perl/5.28/Getopt/Long.pm:838:     my @names;
>> /usr/share/perl/5.28/Getopt/Long.pm:839:     if ( defined $names ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:840:     @names =  split (/\|/, $names);
>> /usr/share/perl/5.28/Getopt/Long.pm:841:     $orig = $names[0];
>> /usr/share/perl/5.28/Getopt/Long.pm:849:     my $entry;
>> /usr/share/perl/5.28/Getopt/Long.pm:850:     if ( $spec eq '' || $spec eq '+' || $spec eq '!' ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:866:     my ($mand, $type, $dest) =
>> /usr/share/perl/5.28/Getopt/Long.pm:868:     return (undef, "Cannot repeat while bundling: \"$opt\"\n")
>> /usr/share/perl/5.28/Getopt/Long.pm:870:     my ($mi, $cm, $ma) = ($5, $6, $7);
>> /usr/share/perl/5.28/Getopt/Long.pm:871:     return (undef, "{0} is useless in option spec: \"$opt\"\n")
>> /usr/share/perl/5.28/Getopt/Long.pm:874:     $type = 'i' if $type eq 'n';
>> /usr/share/perl/5.28/Getopt/Long.pm:875:     $dest ||= '$';
>> /usr/share/perl/5.28/Getopt/Long.pm:876:     $dest = $dest eq '@' ? CTL_DEST_ARRAY
>> /usr/share/perl/5.28/Getopt/Long.pm:879:     $mi = $mand eq '=' ? 1 : 0 unless defined $mi;
>> /usr/share/perl/5.28/Getopt/Long.pm:881:     $mand = $mi ? '=' : ':';
>> /usr/share/perl/5.28/Getopt/Long.pm:883:     $ma = $mi ? $mi : 1 unless defined $ma || defined $cm;
>> /usr/share/perl/5.28/Getopt/Long.pm:884:     return (undef, "Max must be greater than zero in option spec: \"$opt\"\n")
>> /usr/share/perl/5.28/Getopt/Long.pm:886:     return (undef, "Max less than min in option spec: \"$opt\"\n")
>> /usr/share/perl/5.28/Getopt/Long.pm:890:     $entry = [$type,$orig,undef,$dest,$mi,$ma||-1];
>> /usr/share/perl/5.28/Getopt/Long.pm:894:     my $dups = '';
>> /usr/share/perl/5.28/Getopt/Long.pm:895:     foreach ( @names ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:897:     $_ = lc ($_)
>> /usr/share/perl/5.28/Getopt/Long.pm:900:     if ( exists $opctl->{$_} ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:904:     if ( $spec eq '!' ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:911:         $opctl->{$_} = $entry;
>> /usr/share/perl/5.28/Getopt/Long.pm:897:     $_ = lc ($_)
>> /usr/share/perl/5.28/Getopt/Long.pm:900:     if ( exists $opctl->{$_} ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:904:     if ( $spec eq '!' ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:911:         $opctl->{$_} = $entry;
>> /usr/share/perl/5.28/Getopt/Long.pm:915:     if ( $dups && $^W ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:920:     ($names[0], $orig);
>> /usr/share/perl/5.28/Getopt/Long.pm:387:     unless ( defined $name ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:398:     if ( defined $userlinkage ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:415:     if ( @optionlist > 0 && ref($optionlist[0]) ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:416:         print STDERR ("=> link \"$orig\" to $optionlist[0]\n")
>> /usr/share/perl/5.28/Getopt/Long.pm:418:         my $rl = ref($linkage{$orig} = shift (@optionlist));
>> /usr/share/perl/5.28/Getopt/Long.pm:420:         if ( $rl eq "ARRAY" ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:421:         $opctl{$name}[CTL_DEST] = CTL_DEST_ARRAY;
>> /usr/share/perl/5.28/Getopt/Long.pm:466:     if ( $opctl{$name}[CTL_TYPE] eq 'I'
>> /usr/share/perl/5.28/Getopt/Long.pm:356:     my $opt = shift (@optionlist);
>> /usr/share/perl/5.28/Getopt/Long.pm:358:     unless ( defined($opt) ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:364:     $opt = $+ if $opt =~ /^$prefix+(.*)$/s;
>> /usr/share/perl/5.28/Getopt/Long.pm:366:     if ( $opt eq '<>' ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:386:     my ($name, $orig) = ParseOptionSpec ($opt, \%opctl);
>> /usr/share/perl/5.28/Getopt/Long.pm:801:     my ($opt, $opctl) = @_;
>> /usr/share/perl/5.28/Getopt/Long.pm:804:     if ( $opt !~ m;^
>> /usr/share/perl/5.28/Getopt/Long.pm:827:     my ($names, $spec) = ($1, $2);
>> /usr/share/perl/5.28/Getopt/Long.pm:828:     $spec = '' unless defined $spec;
>> /usr/share/perl/5.28/Getopt/Long.pm:836:     my $orig;
>> /usr/share/perl/5.28/Getopt/Long.pm:838:     my @names;
>> /usr/share/perl/5.28/Getopt/Long.pm:839:     if ( defined $names ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:840:     @names =  split (/\|/, $names);
>> /usr/share/perl/5.28/Getopt/Long.pm:841:     $orig = $names[0];
>> /usr/share/perl/5.28/Getopt/Long.pm:849:     my $entry;
>> /usr/share/perl/5.28/Getopt/Long.pm:850:     if ( $spec eq '' || $spec eq '+' || $spec eq '!' ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:866:     my ($mand, $type, $dest) =
>> /usr/share/perl/5.28/Getopt/Long.pm:868:     return (undef, "Cannot repeat while bundling: \"$opt\"\n")
>> /usr/share/perl/5.28/Getopt/Long.pm:870:     my ($mi, $cm, $ma) = ($5, $6, $7);
>> /usr/share/perl/5.28/Getopt/Long.pm:871:     return (undef, "{0} is useless in option spec: \"$opt\"\n")
>> /usr/share/perl/5.28/Getopt/Long.pm:874:     $type = 'i' if $type eq 'n';
>> /usr/share/perl/5.28/Getopt/Long.pm:875:     $dest ||= '$';
>> /usr/share/perl/5.28/Getopt/Long.pm:876:     $dest = $dest eq '@' ? CTL_DEST_ARRAY
>> /usr/share/perl/5.28/Getopt/Long.pm:879:     $mi = $mand eq '=' ? 1 : 0 unless defined $mi;
>> /usr/share/perl/5.28/Getopt/Long.pm:881:     $mand = $mi ? '=' : ':';
>> /usr/share/perl/5.28/Getopt/Long.pm:883:     $ma = $mi ? $mi : 1 unless defined $ma || defined $cm;
>> /usr/share/perl/5.28/Getopt/Long.pm:884:     return (undef, "Max must be greater than zero in option spec: \"$opt\"\n")
>> /usr/share/perl/5.28/Getopt/Long.pm:886:     return (undef, "Max less than min in option spec: \"$opt\"\n")
>> /usr/share/perl/5.28/Getopt/Long.pm:890:     $entry = [$type,$orig,undef,$dest,$mi,$ma||-1];
>> /usr/share/perl/5.28/Getopt/Long.pm:894:     my $dups = '';
>> /usr/share/perl/5.28/Getopt/Long.pm:895:     foreach ( @names ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:897:     $_ = lc ($_)
>> /usr/share/perl/5.28/Getopt/Long.pm:900:     if ( exists $opctl->{$_} ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:904:     if ( $spec eq '!' ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:911:         $opctl->{$_} = $entry;
>> /usr/share/perl/5.28/Getopt/Long.pm:897:     $_ = lc ($_)
>> /usr/share/perl/5.28/Getopt/Long.pm:900:     if ( exists $opctl->{$_} ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:904:     if ( $spec eq '!' ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:911:         $opctl->{$_} = $entry;
>> /usr/share/perl/5.28/Getopt/Long.pm:915:     if ( $dups && $^W ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:920:     ($names[0], $orig);
>> /usr/share/perl/5.28/Getopt/Long.pm:387:     unless ( defined $name ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:398:     if ( defined $userlinkage ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:415:     if ( @optionlist > 0 && ref($optionlist[0]) ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:416:         print STDERR ("=> link \"$orig\" to $optionlist[0]\n")
>> /usr/share/perl/5.28/Getopt/Long.pm:418:         my $rl = ref($linkage{$orig} = shift (@optionlist));
>> /usr/share/perl/5.28/Getopt/Long.pm:420:         if ( $rl eq "ARRAY" ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:466:     if ( $opctl{$name}[CTL_TYPE] eq 'I'
>> /usr/share/perl/5.28/Getopt/Long.pm:356:     my $opt = shift (@optionlist);
>> /usr/share/perl/5.28/Getopt/Long.pm:358:     unless ( defined($opt) ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:364:     $opt = $+ if $opt =~ /^$prefix+(.*)$/s;
>> /usr/share/perl/5.28/Getopt/Long.pm:366:     if ( $opt eq '<>' ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:386:     my ($name, $orig) = ParseOptionSpec ($opt, \%opctl);
>> /usr/share/perl/5.28/Getopt/Long.pm:801:     my ($opt, $opctl) = @_;
>> /usr/share/perl/5.28/Getopt/Long.pm:804:     if ( $opt !~ m;^
>> /usr/share/perl/5.28/Getopt/Long.pm:827:     my ($names, $spec) = ($1, $2);
>> /usr/share/perl/5.28/Getopt/Long.pm:828:     $spec = '' unless defined $spec;
>> /usr/share/perl/5.28/Getopt/Long.pm:836:     my $orig;
>> /usr/share/perl/5.28/Getopt/Long.pm:838:     my @names;
>> /usr/share/perl/5.28/Getopt/Long.pm:839:     if ( defined $names ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:840:     @names =  split (/\|/, $names);
>> /usr/share/perl/5.28/Getopt/Long.pm:841:     $orig = $names[0];
>> /usr/share/perl/5.28/Getopt/Long.pm:849:     my $entry;
>> /usr/share/perl/5.28/Getopt/Long.pm:850:     if ( $spec eq '' || $spec eq '+' || $spec eq '!' ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:866:     my ($mand, $type, $dest) =
>> /usr/share/perl/5.28/Getopt/Long.pm:868:     return (undef, "Cannot repeat while bundling: \"$opt\"\n")
>> /usr/share/perl/5.28/Getopt/Long.pm:870:     my ($mi, $cm, $ma) = ($5, $6, $7);
>> /usr/share/perl/5.28/Getopt/Long.pm:871:     return (undef, "{0} is useless in option spec: \"$opt\"\n")
>> /usr/share/perl/5.28/Getopt/Long.pm:874:     $type = 'i' if $type eq 'n';
>> /usr/share/perl/5.28/Getopt/Long.pm:875:     $dest ||= '$';
>> /usr/share/perl/5.28/Getopt/Long.pm:876:     $dest = $dest eq '@' ? CTL_DEST_ARRAY
>> /usr/share/perl/5.28/Getopt/Long.pm:879:     $mi = $mand eq '=' ? 1 : 0 unless defined $mi;
>> /usr/share/perl/5.28/Getopt/Long.pm:881:     $mand = $mi ? '=' : ':';
>> /usr/share/perl/5.28/Getopt/Long.pm:883:     $ma = $mi ? $mi : 1 unless defined $ma || defined $cm;
>> /usr/share/perl/5.28/Getopt/Long.pm:884:     return (undef, "Max must be greater than zero in option spec: \"$opt\"\n")
>> /usr/share/perl/5.28/Getopt/Long.pm:886:     return (undef, "Max less than min in option spec: \"$opt\"\n")
>> /usr/share/perl/5.28/Getopt/Long.pm:890:     $entry = [$type,$orig,undef,$dest,$mi,$ma||-1];
>> /usr/share/perl/5.28/Getopt/Long.pm:894:     my $dups = '';
>> /usr/share/perl/5.28/Getopt/Long.pm:895:     foreach ( @names ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:897:     $_ = lc ($_)
>> /usr/share/perl/5.28/Getopt/Long.pm:900:     if ( exists $opctl->{$_} ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:904:     if ( $spec eq '!' ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:911:         $opctl->{$_} = $entry;
>> /usr/share/perl/5.28/Getopt/Long.pm:897:     $_ = lc ($_)
>> /usr/share/perl/5.28/Getopt/Long.pm:900:     if ( exists $opctl->{$_} ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:904:     if ( $spec eq '!' ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:911:         $opctl->{$_} = $entry;
>> /usr/share/perl/5.28/Getopt/Long.pm:915:     if ( $dups && $^W ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:920:     ($names[0], $orig);
>> /usr/share/perl/5.28/Getopt/Long.pm:387:     unless ( defined $name ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:398:     if ( defined $userlinkage ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:415:     if ( @optionlist > 0 && ref($optionlist[0]) ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:416:         print STDERR ("=> link \"$orig\" to $optionlist[0]\n")
>> /usr/share/perl/5.28/Getopt/Long.pm:418:         my $rl = ref($linkage{$orig} = shift (@optionlist));
>> /usr/share/perl/5.28/Getopt/Long.pm:420:         if ( $rl eq "ARRAY" ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:466:     if ( $opctl{$name}[CTL_TYPE] eq 'I'
>> /usr/share/perl/5.28/Getopt/Long.pm:356:     my $opt = shift (@optionlist);
>> /usr/share/perl/5.28/Getopt/Long.pm:358:     unless ( defined($opt) ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:364:     $opt = $+ if $opt =~ /^$prefix+(.*)$/s;
>> /usr/share/perl/5.28/Getopt/Long.pm:366:     if ( $opt eq '<>' ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:386:     my ($name, $orig) = ParseOptionSpec ($opt, \%opctl);
>> /usr/share/perl/5.28/Getopt/Long.pm:801:     my ($opt, $opctl) = @_;
>> /usr/share/perl/5.28/Getopt/Long.pm:804:     if ( $opt !~ m;^
>> /usr/share/perl/5.28/Getopt/Long.pm:827:     my ($names, $spec) = ($1, $2);
>> /usr/share/perl/5.28/Getopt/Long.pm:828:     $spec = '' unless defined $spec;
>> /usr/share/perl/5.28/Getopt/Long.pm:836:     my $orig;
>> /usr/share/perl/5.28/Getopt/Long.pm:838:     my @names;
>> /usr/share/perl/5.28/Getopt/Long.pm:839:     if ( defined $names ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:840:     @names =  split (/\|/, $names);
>> /usr/share/perl/5.28/Getopt/Long.pm:841:     $orig = $names[0];
>> /usr/share/perl/5.28/Getopt/Long.pm:849:     my $entry;
>> /usr/share/perl/5.28/Getopt/Long.pm:850:     if ( $spec eq '' || $spec eq '+' || $spec eq '!' ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:866:     my ($mand, $type, $dest) =
>> /usr/share/perl/5.28/Getopt/Long.pm:868:     return (undef, "Cannot repeat while bundling: \"$opt\"\n")
>> /usr/share/perl/5.28/Getopt/Long.pm:870:     my ($mi, $cm, $ma) = ($5, $6, $7);
>> /usr/share/perl/5.28/Getopt/Long.pm:871:     return (undef, "{0} is useless in option spec: \"$opt\"\n")
>> /usr/share/perl/5.28/Getopt/Long.pm:874:     $type = 'i' if $type eq 'n';
>> /usr/share/perl/5.28/Getopt/Long.pm:875:     $dest ||= '$';
>> /usr/share/perl/5.28/Getopt/Long.pm:876:     $dest = $dest eq '@' ? CTL_DEST_ARRAY
>> /usr/share/perl/5.28/Getopt/Long.pm:879:     $mi = $mand eq '=' ? 1 : 0 unless defined $mi;
>> /usr/share/perl/5.28/Getopt/Long.pm:881:     $mand = $mi ? '=' : ':';
>> /usr/share/perl/5.28/Getopt/Long.pm:883:     $ma = $mi ? $mi : 1 unless defined $ma || defined $cm;
>> /usr/share/perl/5.28/Getopt/Long.pm:884:     return (undef, "Max must be greater than zero in option spec: \"$opt\"\n")
>> /usr/share/perl/5.28/Getopt/Long.pm:886:     return (undef, "Max less than min in option spec: \"$opt\"\n")
>> /usr/share/perl/5.28/Getopt/Long.pm:890:     $entry = [$type,$orig,undef,$dest,$mi,$ma||-1];
>> /usr/share/perl/5.28/Getopt/Long.pm:894:     my $dups = '';
>> /usr/share/perl/5.28/Getopt/Long.pm:895:     foreach ( @names ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:897:     $_ = lc ($_)
>> /usr/share/perl/5.28/Getopt/Long.pm:900:     if ( exists $opctl->{$_} ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:904:     if ( $spec eq '!' ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:911:         $opctl->{$_} = $entry;
>> /usr/share/perl/5.28/Getopt/Long.pm:897:     $_ = lc ($_)
>> /usr/share/perl/5.28/Getopt/Long.pm:900:     if ( exists $opctl->{$_} ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:904:     if ( $spec eq '!' ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:911:         $opctl->{$_} = $entry;
>> /usr/share/perl/5.28/Getopt/Long.pm:915:     if ( $dups && $^W ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:920:     ($names[0], $orig);
>> /usr/share/perl/5.28/Getopt/Long.pm:387:     unless ( defined $name ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:398:     if ( defined $userlinkage ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:415:     if ( @optionlist > 0 && ref($optionlist[0]) ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:416:         print STDERR ("=> link \"$orig\" to $optionlist[0]\n")
>> /usr/share/perl/5.28/Getopt/Long.pm:418:         my $rl = ref($linkage{$orig} = shift (@optionlist));
>> /usr/share/perl/5.28/Getopt/Long.pm:420:         if ( $rl eq "ARRAY" ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:466:     if ( $opctl{$name}[CTL_TYPE] eq 'I'
>> /usr/share/perl/5.28/Getopt/Long.pm:356:     my $opt = shift (@optionlist);
>> /usr/share/perl/5.28/Getopt/Long.pm:358:     unless ( defined($opt) ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:364:     $opt = $+ if $opt =~ /^$prefix+(.*)$/s;
>> /usr/share/perl/5.28/Getopt/Long.pm:366:     if ( $opt eq '<>' ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:386:     my ($name, $orig) = ParseOptionSpec ($opt, \%opctl);
>> /usr/share/perl/5.28/Getopt/Long.pm:801:     my ($opt, $opctl) = @_;
>> /usr/share/perl/5.28/Getopt/Long.pm:804:     if ( $opt !~ m;^
>> /usr/share/perl/5.28/Getopt/Long.pm:827:     my ($names, $spec) = ($1, $2);
>> /usr/share/perl/5.28/Getopt/Long.pm:828:     $spec = '' unless defined $spec;
>> /usr/share/perl/5.28/Getopt/Long.pm:836:     my $orig;
>> /usr/share/perl/5.28/Getopt/Long.pm:838:     my @names;
>> /usr/share/perl/5.28/Getopt/Long.pm:839:     if ( defined $names ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:840:     @names =  split (/\|/, $names);
>> /usr/share/perl/5.28/Getopt/Long.pm:841:     $orig = $names[0];
>> /usr/share/perl/5.28/Getopt/Long.pm:849:     my $entry;
>> /usr/share/perl/5.28/Getopt/Long.pm:850:     if ( $spec eq '' || $spec eq '+' || $spec eq '!' ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:852:     $entry = [$spec,$orig,undef,CTL_DEST_SCALAR,0,0];
>> /usr/share/perl/5.28/Getopt/Long.pm:894:     my $dups = '';
>> /usr/share/perl/5.28/Getopt/Long.pm:895:     foreach ( @names ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:897:     $_ = lc ($_)
>> /usr/share/perl/5.28/Getopt/Long.pm:900:     if ( exists $opctl->{$_} ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:904:     if ( $spec eq '!' ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:911:         $opctl->{$_} = $entry;
>> /usr/share/perl/5.28/Getopt/Long.pm:897:     $_ = lc ($_)
>> /usr/share/perl/5.28/Getopt/Long.pm:900:     if ( exists $opctl->{$_} ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:904:     if ( $spec eq '!' ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:911:         $opctl->{$_} = $entry;
>> /usr/share/perl/5.28/Getopt/Long.pm:915:     if ( $dups && $^W ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:920:     ($names[0], $orig);
>> /usr/share/perl/5.28/Getopt/Long.pm:387:     unless ( defined $name ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:398:     if ( defined $userlinkage ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:415:     if ( @optionlist > 0 && ref($optionlist[0]) ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:416:         print STDERR ("=> link \"$orig\" to $optionlist[0]\n")
>> /usr/share/perl/5.28/Getopt/Long.pm:418:         my $rl = ref($linkage{$orig} = shift (@optionlist));
>> /usr/share/perl/5.28/Getopt/Long.pm:420:         if ( $rl eq "ARRAY" ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:466:     if ( $opctl{$name}[CTL_TYPE] eq 'I'
>> /usr/share/perl/5.28/Getopt/Long.pm:356:     my $opt = shift (@optionlist);
>> /usr/share/perl/5.28/Getopt/Long.pm:358:     unless ( defined($opt) ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:364:     $opt = $+ if $opt =~ /^$prefix+(.*)$/s;
>> /usr/share/perl/5.28/Getopt/Long.pm:366:     if ( $opt eq '<>' ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:386:     my ($name, $orig) = ParseOptionSpec ($opt, \%opctl);
>> /usr/share/perl/5.28/Getopt/Long.pm:801:     my ($opt, $opctl) = @_;
>> /usr/share/perl/5.28/Getopt/Long.pm:804:     if ( $opt !~ m;^
>> /usr/share/perl/5.28/Getopt/Long.pm:827:     my ($names, $spec) = ($1, $2);
>> /usr/share/perl/5.28/Getopt/Long.pm:828:     $spec = '' unless defined $spec;
>> /usr/share/perl/5.28/Getopt/Long.pm:836:     my $orig;
>> /usr/share/perl/5.28/Getopt/Long.pm:838:     my @names;
>> /usr/share/perl/5.28/Getopt/Long.pm:839:     if ( defined $names ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:840:     @names =  split (/\|/, $names);
>> /usr/share/perl/5.28/Getopt/Long.pm:841:     $orig = $names[0];
>> /usr/share/perl/5.28/Getopt/Long.pm:849:     my $entry;
>> /usr/share/perl/5.28/Getopt/Long.pm:850:     if ( $spec eq '' || $spec eq '+' || $spec eq '!' ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:852:     $entry = [$spec,$orig,undef,CTL_DEST_SCALAR,0,0];
>> /usr/share/perl/5.28/Getopt/Long.pm:894:     my $dups = '';
>> /usr/share/perl/5.28/Getopt/Long.pm:895:     foreach ( @names ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:897:     $_ = lc ($_)
>> /usr/share/perl/5.28/Getopt/Long.pm:900:     if ( exists $opctl->{$_} ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:904:     if ( $spec eq '!' ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:911:         $opctl->{$_} = $entry;
>> /usr/share/perl/5.28/Getopt/Long.pm:897:     $_ = lc ($_)
>> /usr/share/perl/5.28/Getopt/Long.pm:900:     if ( exists $opctl->{$_} ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:904:     if ( $spec eq '!' ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:911:         $opctl->{$_} = $entry;
>> /usr/share/perl/5.28/Getopt/Long.pm:915:     if ( $dups && $^W ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:920:     ($names[0], $orig);
>> /usr/share/perl/5.28/Getopt/Long.pm:387:     unless ( defined $name ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:398:     if ( defined $userlinkage ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:415:     if ( @optionlist > 0 && ref($optionlist[0]) ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:416:         print STDERR ("=> link \"$orig\" to $optionlist[0]\n")
>> /usr/share/perl/5.28/Getopt/Long.pm:418:         my $rl = ref($linkage{$orig} = shift (@optionlist));
>> /usr/share/perl/5.28/Getopt/Long.pm:420:         if ( $rl eq "ARRAY" ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:466:     if ( $opctl{$name}[CTL_TYPE] eq 'I'
>> /usr/share/perl/5.28/Getopt/Long.pm:356:     my $opt = shift (@optionlist);
>> /usr/share/perl/5.28/Getopt/Long.pm:358:     unless ( defined($opt) ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:364:     $opt = $+ if $opt =~ /^$prefix+(.*)$/s;
>> /usr/share/perl/5.28/Getopt/Long.pm:366:     if ( $opt eq '<>' ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:386:     my ($name, $orig) = ParseOptionSpec ($opt, \%opctl);
>> /usr/share/perl/5.28/Getopt/Long.pm:801:     my ($opt, $opctl) = @_;
>> /usr/share/perl/5.28/Getopt/Long.pm:804:     if ( $opt !~ m;^
>> /usr/share/perl/5.28/Getopt/Long.pm:827:     my ($names, $spec) = ($1, $2);
>> /usr/share/perl/5.28/Getopt/Long.pm:828:     $spec = '' unless defined $spec;
>> /usr/share/perl/5.28/Getopt/Long.pm:836:     my $orig;
>> /usr/share/perl/5.28/Getopt/Long.pm:838:     my @names;
>> /usr/share/perl/5.28/Getopt/Long.pm:839:     if ( defined $names ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:840:     @names =  split (/\|/, $names);
>> /usr/share/perl/5.28/Getopt/Long.pm:841:     $orig = $names[0];
>> /usr/share/perl/5.28/Getopt/Long.pm:849:     my $entry;
>> /usr/share/perl/5.28/Getopt/Long.pm:850:     if ( $spec eq '' || $spec eq '+' || $spec eq '!' ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:852:     $entry = [$spec,$orig,undef,CTL_DEST_SCALAR,0,0];
>> /usr/share/perl/5.28/Getopt/Long.pm:894:     my $dups = '';
>> /usr/share/perl/5.28/Getopt/Long.pm:895:     foreach ( @names ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:897:     $_ = lc ($_)
>> /usr/share/perl/5.28/Getopt/Long.pm:900:     if ( exists $opctl->{$_} ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:904:     if ( $spec eq '!' ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:911:         $opctl->{$_} = $entry;
>> /usr/share/perl/5.28/Getopt/Long.pm:897:     $_ = lc ($_)
>> /usr/share/perl/5.28/Getopt/Long.pm:900:     if ( exists $opctl->{$_} ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:904:     if ( $spec eq '!' ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:911:         $opctl->{$_} = $entry;
>> /usr/share/perl/5.28/Getopt/Long.pm:915:     if ( $dups && $^W ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:920:     ($names[0], $orig);
>> /usr/share/perl/5.28/Getopt/Long.pm:387:     unless ( defined $name ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:398:     if ( defined $userlinkage ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:415:     if ( @optionlist > 0 && ref($optionlist[0]) ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:416:         print STDERR ("=> link \"$orig\" to $optionlist[0]\n")
>> /usr/share/perl/5.28/Getopt/Long.pm:418:         my $rl = ref($linkage{$orig} = shift (@optionlist));
>> /usr/share/perl/5.28/Getopt/Long.pm:420:         if ( $rl eq "ARRAY" ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:466:     if ( $opctl{$name}[CTL_TYPE] eq 'I'
>> /usr/share/perl/5.28/Getopt/Long.pm:356:     my $opt = shift (@optionlist);
>> /usr/share/perl/5.28/Getopt/Long.pm:358:     unless ( defined($opt) ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:364:     $opt = $+ if $opt =~ /^$prefix+(.*)$/s;
>> /usr/share/perl/5.28/Getopt/Long.pm:366:     if ( $opt eq '<>' ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:386:     my ($name, $orig) = ParseOptionSpec ($opt, \%opctl);
>> /usr/share/perl/5.28/Getopt/Long.pm:801:     my ($opt, $opctl) = @_;
>> /usr/share/perl/5.28/Getopt/Long.pm:804:     if ( $opt !~ m;^
>> /usr/share/perl/5.28/Getopt/Long.pm:827:     my ($names, $spec) = ($1, $2);
>> /usr/share/perl/5.28/Getopt/Long.pm:828:     $spec = '' unless defined $spec;
>> /usr/share/perl/5.28/Getopt/Long.pm:836:     my $orig;
>> /usr/share/perl/5.28/Getopt/Long.pm:838:     my @names;
>> /usr/share/perl/5.28/Getopt/Long.pm:839:     if ( defined $names ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:840:     @names =  split (/\|/, $names);
>> /usr/share/perl/5.28/Getopt/Long.pm:841:     $orig = $names[0];
>> /usr/share/perl/5.28/Getopt/Long.pm:849:     my $entry;
>> /usr/share/perl/5.28/Getopt/Long.pm:850:     if ( $spec eq '' || $spec eq '+' || $spec eq '!' ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:866:     my ($mand, $type, $dest) =
>> /usr/share/perl/5.28/Getopt/Long.pm:868:     return (undef, "Cannot repeat while bundling: \"$opt\"\n")
>> /usr/share/perl/5.28/Getopt/Long.pm:870:     my ($mi, $cm, $ma) = ($5, $6, $7);
>> /usr/share/perl/5.28/Getopt/Long.pm:871:     return (undef, "{0} is useless in option spec: \"$opt\"\n")
>> /usr/share/perl/5.28/Getopt/Long.pm:874:     $type = 'i' if $type eq 'n';
>> /usr/share/perl/5.28/Getopt/Long.pm:875:     $dest ||= '$';
>> /usr/share/perl/5.28/Getopt/Long.pm:876:     $dest = $dest eq '@' ? CTL_DEST_ARRAY
>> /usr/share/perl/5.28/Getopt/Long.pm:879:     $mi = $mand eq '=' ? 1 : 0 unless defined $mi;
>> /usr/share/perl/5.28/Getopt/Long.pm:881:     $mand = $mi ? '=' : ':';
>> /usr/share/perl/5.28/Getopt/Long.pm:883:     $ma = $mi ? $mi : 1 unless defined $ma || defined $cm;
>> /usr/share/perl/5.28/Getopt/Long.pm:884:     return (undef, "Max must be greater than zero in option spec: \"$opt\"\n")
>> /usr/share/perl/5.28/Getopt/Long.pm:886:     return (undef, "Max less than min in option spec: \"$opt\"\n")
>> /usr/share/perl/5.28/Getopt/Long.pm:890:     $entry = [$type,$orig,undef,$dest,$mi,$ma||-1];
>> /usr/share/perl/5.28/Getopt/Long.pm:894:     my $dups = '';
>> /usr/share/perl/5.28/Getopt/Long.pm:895:     foreach ( @names ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:897:     $_ = lc ($_)
>> /usr/share/perl/5.28/Getopt/Long.pm:900:     if ( exists $opctl->{$_} ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:904:     if ( $spec eq '!' ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:911:         $opctl->{$_} = $entry;
>> /usr/share/perl/5.28/Getopt/Long.pm:897:     $_ = lc ($_)
>> /usr/share/perl/5.28/Getopt/Long.pm:900:     if ( exists $opctl->{$_} ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:904:     if ( $spec eq '!' ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:911:         $opctl->{$_} = $entry;
>> /usr/share/perl/5.28/Getopt/Long.pm:915:     if ( $dups && $^W ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:920:     ($names[0], $orig);
>> /usr/share/perl/5.28/Getopt/Long.pm:387:     unless ( defined $name ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:398:     if ( defined $userlinkage ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:415:     if ( @optionlist > 0 && ref($optionlist[0]) ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:416:         print STDERR ("=> link \"$orig\" to $optionlist[0]\n")
>> /usr/share/perl/5.28/Getopt/Long.pm:418:         my $rl = ref($linkage{$orig} = shift (@optionlist));
>> /usr/share/perl/5.28/Getopt/Long.pm:420:         if ( $rl eq "ARRAY" ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:421:         $opctl{$name}[CTL_DEST] = CTL_DEST_ARRAY;
>> /usr/share/perl/5.28/Getopt/Long.pm:466:     if ( $opctl{$name}[CTL_TYPE] eq 'I'
>> /usr/share/perl/5.28/Getopt/Long.pm:356:     my $opt = shift (@optionlist);
>> /usr/share/perl/5.28/Getopt/Long.pm:358:     unless ( defined($opt) ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:364:     $opt = $+ if $opt =~ /^$prefix+(.*)$/s;
>> /usr/share/perl/5.28/Getopt/Long.pm:366:     if ( $opt eq '<>' ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:386:     my ($name, $orig) = ParseOptionSpec ($opt, \%opctl);
>> /usr/share/perl/5.28/Getopt/Long.pm:801:     my ($opt, $opctl) = @_;
>> /usr/share/perl/5.28/Getopt/Long.pm:804:     if ( $opt !~ m;^
>> /usr/share/perl/5.28/Getopt/Long.pm:827:     my ($names, $spec) = ($1, $2);
>> /usr/share/perl/5.28/Getopt/Long.pm:828:     $spec = '' unless defined $spec;
>> /usr/share/perl/5.28/Getopt/Long.pm:836:     my $orig;
>> /usr/share/perl/5.28/Getopt/Long.pm:838:     my @names;
>> /usr/share/perl/5.28/Getopt/Long.pm:839:     if ( defined $names ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:840:     @names =  split (/\|/, $names);
>> /usr/share/perl/5.28/Getopt/Long.pm:841:     $orig = $names[0];
>> /usr/share/perl/5.28/Getopt/Long.pm:849:     my $entry;
>> /usr/share/perl/5.28/Getopt/Long.pm:850:     if ( $spec eq '' || $spec eq '+' || $spec eq '!' ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:852:     $entry = [$spec,$orig,undef,CTL_DEST_SCALAR,0,0];
>> /usr/share/perl/5.28/Getopt/Long.pm:894:     my $dups = '';
>> /usr/share/perl/5.28/Getopt/Long.pm:895:     foreach ( @names ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:897:     $_ = lc ($_)
>> /usr/share/perl/5.28/Getopt/Long.pm:900:     if ( exists $opctl->{$_} ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:904:     if ( $spec eq '!' ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:911:         $opctl->{$_} = $entry;
>> /usr/share/perl/5.28/Getopt/Long.pm:897:     $_ = lc ($_)
>> /usr/share/perl/5.28/Getopt/Long.pm:900:     if ( exists $opctl->{$_} ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:904:     if ( $spec eq '!' ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:911:         $opctl->{$_} = $entry;
>> /usr/share/perl/5.28/Getopt/Long.pm:915:     if ( $dups && $^W ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:920:     ($names[0], $orig);
>> /usr/share/perl/5.28/Getopt/Long.pm:387:     unless ( defined $name ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:398:     if ( defined $userlinkage ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:415:     if ( @optionlist > 0 && ref($optionlist[0]) ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:416:         print STDERR ("=> link \"$orig\" to $optionlist[0]\n")
>> /usr/share/perl/5.28/Getopt/Long.pm:418:         my $rl = ref($linkage{$orig} = shift (@optionlist));
>> /usr/share/perl/5.28/Getopt/Long.pm:420:         if ( $rl eq "ARRAY" ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:466:     if ( $opctl{$name}[CTL_TYPE] eq 'I'
>> /usr/share/perl/5.28/Getopt/Long.pm:356:     my $opt = shift (@optionlist);
>> /usr/share/perl/5.28/Getopt/Long.pm:358:     unless ( defined($opt) ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:364:     $opt = $+ if $opt =~ /^$prefix+(.*)$/s;
>> /usr/share/perl/5.28/Getopt/Long.pm:366:     if ( $opt eq '<>' ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:386:     my ($name, $orig) = ParseOptionSpec ($opt, \%opctl);
>> /usr/share/perl/5.28/Getopt/Long.pm:801:     my ($opt, $opctl) = @_;
>> /usr/share/perl/5.28/Getopt/Long.pm:804:     if ( $opt !~ m;^
>> /usr/share/perl/5.28/Getopt/Long.pm:827:     my ($names, $spec) = ($1, $2);
>> /usr/share/perl/5.28/Getopt/Long.pm:828:     $spec = '' unless defined $spec;
>> /usr/share/perl/5.28/Getopt/Long.pm:836:     my $orig;
>> /usr/share/perl/5.28/Getopt/Long.pm:838:     my @names;
>> /usr/share/perl/5.28/Getopt/Long.pm:839:     if ( defined $names ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:840:     @names =  split (/\|/, $names);
>> /usr/share/perl/5.28/Getopt/Long.pm:841:     $orig = $names[0];
>> /usr/share/perl/5.28/Getopt/Long.pm:849:     my $entry;
>> /usr/share/perl/5.28/Getopt/Long.pm:850:     if ( $spec eq '' || $spec eq '+' || $spec eq '!' ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:852:     $entry = [$spec,$orig,undef,CTL_DEST_SCALAR,0,0];
>> /usr/share/perl/5.28/Getopt/Long.pm:894:     my $dups = '';
>> /usr/share/perl/5.28/Getopt/Long.pm:895:     foreach ( @names ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:897:     $_ = lc ($_)
>> /usr/share/perl/5.28/Getopt/Long.pm:900:     if ( exists $opctl->{$_} ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:904:     if ( $spec eq '!' ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:911:         $opctl->{$_} = $entry;
>> /usr/share/perl/5.28/Getopt/Long.pm:897:     $_ = lc ($_)
>> /usr/share/perl/5.28/Getopt/Long.pm:900:     if ( exists $opctl->{$_} ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:904:     if ( $spec eq '!' ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:911:         $opctl->{$_} = $entry;
>> /usr/share/perl/5.28/Getopt/Long.pm:915:     if ( $dups && $^W ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:920:     ($names[0], $orig);
>> /usr/share/perl/5.28/Getopt/Long.pm:387:     unless ( defined $name ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:398:     if ( defined $userlinkage ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:415:     if ( @optionlist > 0 && ref($optionlist[0]) ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:416:         print STDERR ("=> link \"$orig\" to $optionlist[0]\n")
>> /usr/share/perl/5.28/Getopt/Long.pm:418:         my $rl = ref($linkage{$orig} = shift (@optionlist));
>> /usr/share/perl/5.28/Getopt/Long.pm:420:         if ( $rl eq "ARRAY" ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:466:     if ( $opctl{$name}[CTL_TYPE] eq 'I'
>> /usr/share/perl/5.28/Getopt/Long.pm:356:     my $opt = shift (@optionlist);
>> /usr/share/perl/5.28/Getopt/Long.pm:358:     unless ( defined($opt) ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:364:     $opt = $+ if $opt =~ /^$prefix+(.*)$/s;
>> /usr/share/perl/5.28/Getopt/Long.pm:366:     if ( $opt eq '<>' ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:386:     my ($name, $orig) = ParseOptionSpec ($opt, \%opctl);
>> /usr/share/perl/5.28/Getopt/Long.pm:801:     my ($opt, $opctl) = @_;
>> /usr/share/perl/5.28/Getopt/Long.pm:804:     if ( $opt !~ m;^
>> /usr/share/perl/5.28/Getopt/Long.pm:827:     my ($names, $spec) = ($1, $2);
>> /usr/share/perl/5.28/Getopt/Long.pm:828:     $spec = '' unless defined $spec;
>> /usr/share/perl/5.28/Getopt/Long.pm:836:     my $orig;
>> /usr/share/perl/5.28/Getopt/Long.pm:838:     my @names;
>> /usr/share/perl/5.28/Getopt/Long.pm:839:     if ( defined $names ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:840:     @names =  split (/\|/, $names);
>> /usr/share/perl/5.28/Getopt/Long.pm:841:     $orig = $names[0];
>> /usr/share/perl/5.28/Getopt/Long.pm:849:     my $entry;
>> /usr/share/perl/5.28/Getopt/Long.pm:850:     if ( $spec eq '' || $spec eq '+' || $spec eq '!' ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:852:     $entry = [$spec,$orig,undef,CTL_DEST_SCALAR,0,0];
>> /usr/share/perl/5.28/Getopt/Long.pm:894:     my $dups = '';
>> /usr/share/perl/5.28/Getopt/Long.pm:895:     foreach ( @names ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:897:     $_ = lc ($_)
>> /usr/share/perl/5.28/Getopt/Long.pm:900:     if ( exists $opctl->{$_} ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:904:     if ( $spec eq '!' ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:911:         $opctl->{$_} = $entry;
>> /usr/share/perl/5.28/Getopt/Long.pm:897:     $_ = lc ($_)
>> /usr/share/perl/5.28/Getopt/Long.pm:900:     if ( exists $opctl->{$_} ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:904:     if ( $spec eq '!' ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:911:         $opctl->{$_} = $entry;
>> /usr/share/perl/5.28/Getopt/Long.pm:915:     if ( $dups && $^W ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:920:     ($names[0], $orig);
>> /usr/share/perl/5.28/Getopt/Long.pm:387:     unless ( defined $name ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:398:     if ( defined $userlinkage ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:415:     if ( @optionlist > 0 && ref($optionlist[0]) ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:416:         print STDERR ("=> link \"$orig\" to $optionlist[0]\n")
>> /usr/share/perl/5.28/Getopt/Long.pm:418:         my $rl = ref($linkage{$orig} = shift (@optionlist));
>> /usr/share/perl/5.28/Getopt/Long.pm:420:         if ( $rl eq "ARRAY" ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:466:     if ( $opctl{$name}[CTL_TYPE] eq 'I'
>> /usr/share/perl/5.28/Getopt/Long.pm:356:     my $opt = shift (@optionlist);
>> /usr/share/perl/5.28/Getopt/Long.pm:358:     unless ( defined($opt) ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:364:     $opt = $+ if $opt =~ /^$prefix+(.*)$/s;
>> /usr/share/perl/5.28/Getopt/Long.pm:366:     if ( $opt eq '<>' ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:386:     my ($name, $orig) = ParseOptionSpec ($opt, \%opctl);
>> /usr/share/perl/5.28/Getopt/Long.pm:801:     my ($opt, $opctl) = @_;
>> /usr/share/perl/5.28/Getopt/Long.pm:804:     if ( $opt !~ m;^
>> /usr/share/perl/5.28/Getopt/Long.pm:827:     my ($names, $spec) = ($1, $2);
>> /usr/share/perl/5.28/Getopt/Long.pm:828:     $spec = '' unless defined $spec;
>> /usr/share/perl/5.28/Getopt/Long.pm:836:     my $orig;
>> /usr/share/perl/5.28/Getopt/Long.pm:838:     my @names;
>> /usr/share/perl/5.28/Getopt/Long.pm:839:     if ( defined $names ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:840:     @names =  split (/\|/, $names);
>> /usr/share/perl/5.28/Getopt/Long.pm:841:     $orig = $names[0];
>> /usr/share/perl/5.28/Getopt/Long.pm:849:     my $entry;
>> /usr/share/perl/5.28/Getopt/Long.pm:850:     if ( $spec eq '' || $spec eq '+' || $spec eq '!' ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:852:     $entry = [$spec,$orig,undef,CTL_DEST_SCALAR,0,0];
>> /usr/share/perl/5.28/Getopt/Long.pm:894:     my $dups = '';
>> /usr/share/perl/5.28/Getopt/Long.pm:895:     foreach ( @names ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:897:     $_ = lc ($_)
>> /usr/share/perl/5.28/Getopt/Long.pm:900:     if ( exists $opctl->{$_} ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:904:     if ( $spec eq '!' ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:911:         $opctl->{$_} = $entry;
>> /usr/share/perl/5.28/Getopt/Long.pm:897:     $_ = lc ($_)
>> /usr/share/perl/5.28/Getopt/Long.pm:900:     if ( exists $opctl->{$_} ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:904:     if ( $spec eq '!' ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:911:         $opctl->{$_} = $entry;
>> /usr/share/perl/5.28/Getopt/Long.pm:915:     if ( $dups && $^W ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:920:     ($names[0], $orig);
>> /usr/share/perl/5.28/Getopt/Long.pm:387:     unless ( defined $name ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:398:     if ( defined $userlinkage ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:415:     if ( @optionlist > 0 && ref($optionlist[0]) ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:416:         print STDERR ("=> link \"$orig\" to $optionlist[0]\n")
>> /usr/share/perl/5.28/Getopt/Long.pm:418:         my $rl = ref($linkage{$orig} = shift (@optionlist));
>> /usr/share/perl/5.28/Getopt/Long.pm:420:         if ( $rl eq "ARRAY" ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:466:     if ( $opctl{$name}[CTL_TYPE] eq 'I'
>> /usr/share/perl/5.28/Getopt/Long.pm:356:     my $opt = shift (@optionlist);
>> /usr/share/perl/5.28/Getopt/Long.pm:358:     unless ( defined($opt) ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:364:     $opt = $+ if $opt =~ /^$prefix+(.*)$/s;
>> /usr/share/perl/5.28/Getopt/Long.pm:366:     if ( $opt eq '<>' ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:386:     my ($name, $orig) = ParseOptionSpec ($opt, \%opctl);
>> /usr/share/perl/5.28/Getopt/Long.pm:801:     my ($opt, $opctl) = @_;
>> /usr/share/perl/5.28/Getopt/Long.pm:804:     if ( $opt !~ m;^
>> /usr/share/perl/5.28/Getopt/Long.pm:827:     my ($names, $spec) = ($1, $2);
>> /usr/share/perl/5.28/Getopt/Long.pm:828:     $spec = '' unless defined $spec;
>> /usr/share/perl/5.28/Getopt/Long.pm:836:     my $orig;
>> /usr/share/perl/5.28/Getopt/Long.pm:838:     my @names;
>> /usr/share/perl/5.28/Getopt/Long.pm:839:     if ( defined $names ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:840:     @names =  split (/\|/, $names);
>> /usr/share/perl/5.28/Getopt/Long.pm:841:     $orig = $names[0];
>> /usr/share/perl/5.28/Getopt/Long.pm:849:     my $entry;
>> /usr/share/perl/5.28/Getopt/Long.pm:850:     if ( $spec eq '' || $spec eq '+' || $spec eq '!' ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:866:     my ($mand, $type, $dest) =
>> /usr/share/perl/5.28/Getopt/Long.pm:868:     return (undef, "Cannot repeat while bundling: \"$opt\"\n")
>> /usr/share/perl/5.28/Getopt/Long.pm:870:     my ($mi, $cm, $ma) = ($5, $6, $7);
>> /usr/share/perl/5.28/Getopt/Long.pm:871:     return (undef, "{0} is useless in option spec: \"$opt\"\n")
>> /usr/share/perl/5.28/Getopt/Long.pm:874:     $type = 'i' if $type eq 'n';
>> /usr/share/perl/5.28/Getopt/Long.pm:875:     $dest ||= '$';
>> /usr/share/perl/5.28/Getopt/Long.pm:876:     $dest = $dest eq '@' ? CTL_DEST_ARRAY
>> /usr/share/perl/5.28/Getopt/Long.pm:879:     $mi = $mand eq '=' ? 1 : 0 unless defined $mi;
>> /usr/share/perl/5.28/Getopt/Long.pm:881:     $mand = $mi ? '=' : ':';
>> /usr/share/perl/5.28/Getopt/Long.pm:883:     $ma = $mi ? $mi : 1 unless defined $ma || defined $cm;
>> /usr/share/perl/5.28/Getopt/Long.pm:884:     return (undef, "Max must be greater than zero in option spec: \"$opt\"\n")
>> /usr/share/perl/5.28/Getopt/Long.pm:886:     return (undef, "Max less than min in option spec: \"$opt\"\n")
>> /usr/share/perl/5.28/Getopt/Long.pm:890:     $entry = [$type,$orig,undef,$dest,$mi,$ma||-1];
>> /usr/share/perl/5.28/Getopt/Long.pm:894:     my $dups = '';
>> /usr/share/perl/5.28/Getopt/Long.pm:895:     foreach ( @names ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:897:     $_ = lc ($_)
>> /usr/share/perl/5.28/Getopt/Long.pm:900:     if ( exists $opctl->{$_} ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:904:     if ( $spec eq '!' ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:911:         $opctl->{$_} = $entry;
>> /usr/share/perl/5.28/Getopt/Long.pm:897:     $_ = lc ($_)
>> /usr/share/perl/5.28/Getopt/Long.pm:900:     if ( exists $opctl->{$_} ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:904:     if ( $spec eq '!' ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:911:         $opctl->{$_} = $entry;
>> /usr/share/perl/5.28/Getopt/Long.pm:915:     if ( $dups && $^W ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:920:     ($names[0], $orig);
>> /usr/share/perl/5.28/Getopt/Long.pm:387:     unless ( defined $name ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:398:     if ( defined $userlinkage ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:415:     if ( @optionlist > 0 && ref($optionlist[0]) ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:416:         print STDERR ("=> link \"$orig\" to $optionlist[0]\n")
>> /usr/share/perl/5.28/Getopt/Long.pm:418:         my $rl = ref($linkage{$orig} = shift (@optionlist));
>> /usr/share/perl/5.28/Getopt/Long.pm:420:         if ( $rl eq "ARRAY" ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:466:     if ( $opctl{$name}[CTL_TYPE] eq 'I'
>> /usr/share/perl/5.28/Getopt/Long.pm:475:     $error .= "GetOptionsFromArray: 1st parameter is not an array reference\n"
>> /usr/share/perl/5.28/Getopt/Long.pm:479:     die ($error) if $error;
>> /usr/share/perl/5.28/Getopt/Long.pm:480:     $error = 0;
>> /usr/share/perl/5.28/Getopt/Long.pm:483:     if ( defined($auto_version) ? $auto_version : ($requested_version >= 2.3203) ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:490:     if ( defined($auto_help) ? $auto_help : ($requested_version >= 2.3203) ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:499:     if ( $debug ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:509:     my $goon = 1;
>> /usr/share/perl/5.28/Getopt/Long.pm:510:     while ( $goon && @$argv > 0 ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:513:     $opt = shift (@$argv);
>> /usr/share/perl/5.28/Getopt/Long.pm:514:     print STDERR ("=> arg \"", $opt, "\"\n") if $debug;
>> /usr/share/perl/5.28/Getopt/Long.pm:517:     if ( defined($opt) && $opt eq $argend ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:523:     my $tryopt = $opt;
>> /usr/share/perl/5.28/Getopt/Long.pm:524:     my $found;      # success status
>> /usr/share/perl/5.28/Getopt/Long.pm:525:     my $key;        # key (if hash type)
>> /usr/share/perl/5.28/Getopt/Long.pm:526:     my $arg;        # option argument
>> /usr/share/perl/5.28/Getopt/Long.pm:527:     my $ctl;        # the opctl entry
>> /usr/share/perl/5.28/Getopt/Long.pm:529:     ($found, $opt, $ctl, $arg, $key) =
>> /usr/share/perl/5.28/Getopt/Long.pm:930:     my ($argv, $prefix, $argend, $opt, $opctl) = @_;
>> /usr/share/perl/5.28/Getopt/Long.pm:932:     print STDERR ("=> find \"$opt\"\n") if $debug;
>> /usr/share/perl/5.28/Getopt/Long.pm:934:     return (0) unless defined($opt);
>> /usr/share/perl/5.28/Getopt/Long.pm:935:     return (0) unless $opt =~ /^($prefix)(.*)$/s;
>> /usr/share/perl/5.28/Getopt/Long.pm:532:     if ( $found ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:726:         my $cb;
>> /usr/share/perl/5.28/Getopt/Long.pm:727:         if ( defined ($cb = $linkage{'<>'}) ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:755:         print STDERR ("=> saving \"$tryopt\" ",
>> /usr/share/perl/5.28/Getopt/Long.pm:757:         push (@ret, $tryopt);
>> /usr/share/perl/5.28/Getopt/Long.pm:759:         next;
>> /usr/share/perl/5.28/Getopt/Long.pm:772:     if ( @ret && $order == $PERMUTE ) {
>> /usr/share/perl/5.28/Getopt/Long.pm:774:     print STDERR ("=> restoring \"", join('" "', @ret), "\"\n")
>> /usr/share/perl/5.28/Getopt/Long.pm:776:     unshift (@$argv, @ret);
>> /usr/share/perl/5.28/Getopt/Long.pm:779:     return ($error == 0);
>> /usr/local/lib/wml/TheWML/Frontends/Wml/Runner.pm:800:     usage($0) if ( $self->_opt_h );
>> /usr/local/lib/wml/TheWML/Frontends/Wml/Runner.pm:801:     while ( my ( $opt, $var ) = each(%list_options) )
>> /usr/local/lib/wml/TheWML/Frontends/Wml/Runner.pm:803:         if ( @$var and $var->[0] =~ m|^=| )
>> /usr/local/lib/wml/TheWML/Frontends/Wml/Runner.pm:803:         if ( @$var and $var->[0] =~ m|^=| )
>> /usr/local/lib/wml/TheWML/Frontends/Wml/Runner.pm:803:         if ( @$var and $var->[0] =~ m|^=| )
>> /usr/local/lib/wml/TheWML/Frontends/Wml/Runner.pm:803:         if ( @$var and $var->[0] =~ m|^=| )
>> /usr/local/lib/wml/TheWML/Frontends/Wml/Runner.pm:803:         if ( @$var and $var->[0] =~ m|^=| )
>> /usr/local/lib/wml/TheWML/Frontends/Wml/Runner.pm:803:         if ( @$var and $var->[0] =~ m|^=| )
>> /usr/local/lib/wml/TheWML/Frontends/Wml/Runner.pm:803:         if ( @$var and $var->[0] =~ m|^=| )
>> /usr/local/lib/wml/TheWML/Frontends/Wml/Runner.pm:811:     return ($_opt_D);
>> /usr/local/lib/wml/TheWML/Frontends/Wml/Runner.pm:848:     $self->_src( $temp_argv[0] // '-' );
>> /usr/local/lib/wml/TheWML/Frontends/Wml/Runner.pm:851:     $self->_reset_opts;
>> /usr/local/lib/wml/TheWML/Frontends/Wml/Runner.pm:816:     my $self = shift;
>> /usr/local/lib/wml/TheWML/Frontends/Wml/Runner.pm:818:     $self->_pass_mgr->_opt_s(0);
>> /usr/local/lib/wml/TheWML/Frontends/Wml/Runner.pm:819:     $self->_opt_D( [] );
>> /usr/local/lib/wml/TheWML/Frontends/Wml/Runner.pm:78:     return shift->_opt_D_man->_opt_D(@_);
>> /usr/local/lib/wml/TheWML/Frontends/Wml/Runner.pm:820:     $self->_opt_M('-');
>> /usr/local/lib/wml/TheWML/Frontends/Wml/Runner.pm:821:     $self->_opt_O('');
>> /usr/local/lib/wml/TheWML/Frontends/Wml/Runner.pm:822:     $self->_opt_P( [] );
>> /usr/local/lib/wml/TheWML/Frontends/Wml/Runner.pm:823:     $self->_opt_V(-1);
>> /usr/local/lib/wml/TheWML/Frontends/Wml/Runner.pm:824:     $self->_opt_W( [] );
>> /usr/local/lib/wml/TheWML/Frontends/Wml/Runner.pm:825:     $self->_opt_i( [] );
>> /usr/local/lib/wml/TheWML/Frontends/Wml/Runner.pm:826:     $self->_opt_n(0);
>> /usr/local/lib/wml/TheWML/Frontends/Wml/Runner.pm:827:     $self->_opt_o( [] );
>> /usr/local/lib/wml/TheWML/Frontends/Wml/Runner.pm:828:     $self->_opt_p( [] );
>> /usr/local/lib/wml/TheWML/Frontends/Wml/Runner.pm:829:     $self->_opt_q(0);
>> /usr/local/lib/wml/TheWML/Frontends/Wml/Runner.pm:830:     $self->_opt_t(0);
>> /usr/local/lib/wml/TheWML/Frontends/Wml/Runner.pm:831:     return;
>> /usr/local/lib/wml/TheWML/Frontends/Wml/Runner.pm:852:     $self->_process_ENV_WMLOPTS;
>> /usr/local/lib/wml/TheWML/Frontends/Wml/Runner.pm:556:     my ($self) = @_;
>> /usr/local/lib/wml/TheWML/Frontends/Wml/Runner.pm:558:     my $_pass_mgr = $self->_pass_mgr;
>> /usr/local/lib/wml/TheWML/Frontends/Wml/Runner.pm:559:     my $opts      = $ENV{WMLOPTS};
>> /usr/local/lib/wml/TheWML/Frontends/Wml/Runner.pm:560:     return if not $opts;
>> /usr/local/lib/wml/TheWML/Frontends/Wml/Runner.pm:855:     TheWML::Frontends::Wml::WmlRc->new( _main => $self )->_process_wmlrc;
>> /usr/local/lib/wml/TheWML/Frontends/Wml/WmlRc.pm:39:     my ($self) = @_;
>> /usr/local/lib/wml/TheWML/Frontends/Wml/WmlRc.pm:41:     if ( $self->_main->_opt_r )
>> /usr/local/lib/wml/TheWML/Frontends/Wml/WmlRc.pm:45:     my $savedir = '';
>> /usr/local/lib/wml/TheWML/Frontends/Wml/WmlRc.pm:48:     if ( not $self->_main->_opt_c and $self->_main->_src =~ m|/| )
shlomif commented 5 years ago

@traumschule : hi! Based on the trace I don't see how it can happen and it does not h. Please create a self contained, reproducing environment for that in travis-ci/etc (see https://en.wikipedia.org/wiki/Continuous_integration ) and perhaps run the trace on the wml --version invocation - not on wml test.wml. Also please share printenv as i instructed.

traumschule commented 5 years ago

Could it be related to $DISPLAY? It only happens if it is unset here.

xtaran commented 5 years ago

Hi Shlomi,

On Sat, Jan 12, 2019 at 02:46:44PM -0800, Shlomi Fish wrote:

@traumschule : can you share the output of printenv? Does it happen in a new user? Perhaps use https://metacpan.org/search?q=devel%20trace or strace.

@xtaran : any idea regarding debian?

I can reproduce the issue out of the box with 2.12.0 as currently in Debian. Sorry that I didn't notice that before the 2.12.1 release...

    Kind regards, Axel
traumschule commented 5 years ago

Ignore my previous question, it happens no matter what with the packaged version but not with the one installed from source.

$ /usr/local/bin/wml --version
This is WML Version 2.12.1

$ /usr/bin/wml --version
Use of uninitialized value in pattern match (m//) at /usr/share/wml/TheWML/Frontends/Wml/WmlRc.pm line 48.
        TheWML::Frontends::Wml::WmlRc::_process_wmlrc(TheWML::Frontends::Wml::WmlRc=HASH(0x238363c)) called at /usr/share/wml/TheWML/Frontends/Wml/Runner.pm line 858
        TheWML::Frontends::Wml::Runner::run_with_ARGV(TheWML::Frontends::Wml::Runner=HASH(0x20d6f2c), HASH(0x2283724)) called at /usr/bin/wml line 47
This is WML Version 2.12.0
shlomif commented 5 years ago

@traumschule : @xtaran : thanks for the updates. Now we have to figure out if it's a problem in the upstream source or in the debian packaging. For the record, it works fine on mageia 7.

xtaran commented 5 years ago

@traumschule : @xtaran : thanks for the updates. Now we have to figure out if it's a problem in the upstream source or in the debian packaging.

Neither I guess. :-)

Because with the just uploaded Debian package of wml 2.12.1 this issue is gone. I assume this was fixed by some of the upstream changes between 2.12.0 and 2.12.1, maybe with the fixes for #24 or so.

shlomif commented 5 years ago

@xtaran : great, thanks for the update! @traumschule : please confirm that this is fixed for you.

xtaran commented 5 years ago

@traumschule: Please report bugs in Debian packages in Debian next time. The trace above with /usr/share/ clearly comes from wml as packaged for Debian.

shlomif commented 5 years ago

Closing due to lack of response to avoid clutter. I'll reopen if necessary.