SEGVs dont really happen on Win32 (excluding Cygwin). They are called Exceptions with error code 0xC0000005 and perl signals can not catch them. Therefore "Signal SEGV at C:/Perl64/lib/perl5db.pl line 7597 , <INFILE> line 23. DB::diesignal('SEGV')called at GetLocalAdmins.pl " is manually generated. Therefore, there is code you are not showing us. There is no line 23 in your script and no <> operator. I see only upto line 14. The line 7597 in your script is
http://perl5.git.perl.org/perl.git/blob/25fdf527591b902c99f699bb9d51d4f6ce49a6fc:/lib/perl5db.pl#l8503 in git perl. The line in ActivePerl is
# Tell us all about it.
&warn( Carp::longmess("Signal @_") );
, not _db_warn. Something called $signalLevel, to allow diesignal to run and nothing uses http://grep.cpan.me/?q=signalLevel on CPAN, so its your code.