in reply to uninitalised value in numeric


This warning means that either $counter or $pos_end are uninitialised.

Since, you initialise both of these to 0 at the beginning of your program and since $counter is only incremented and not assigned to, it would suggest that $pos_end picks up an undef value along the way.

In the absence of any test data I would guess that one of these assignments is reading off the end of the array:     $new_pos = $orf_array_pos[$orf_counter+1];

Print out the value of $pos_end at the beginning of the for loop and see if it becomes uninitialised.

--
John.