in reply to Is this a severe error?

As others have said, the message you’re getting is a warning, not an error, and it’s likely coming from the line:

print PLP_FILE "$aa_pos\t".$split_query_for_PLP[$s]."\t".$hash_plp_l +bl_barrel_region_only{$s}."\n";

in which case either the array element $split_query_for_PLP[$s] or the hash element $hash_plp_lbl_barrel_region_only{$s} is undefined for some value(s) of $s.

For general debugging advice, see toolic’s Basic debugging checklist. In this case, something like this:

for (my $s = $start_of_barrel_region; $s <= (($start_of_barrel_region ++ $length_of_barrel_region)); $s++) { my $aa_pos = $s + 1; warn "\$aa_pos is undefined when \$s is $s" unless d +efined $aa_pos; warn "\$split_query_for_PLP[$s] is undefined" unless d +efined $split_query_for_PLP[$s]; warn "\$hash_plp_lbl_barrel_region_only{$s} is undefined" unless d +efined $hash_plp_lbl_barrel_region_only{$s}; print PLP_FILE "$aa_pos\t".$split_query_for_PLP[$s] . "\t" . $hash +_plp_lbl_barrel_region_only{$s} . "\n"; }

should solve the mystery.

Hope that helps,

Athanasius <°(((><contra mundum Iustus alius egestas vitae, eros Piratica,