in reply to Referencing in Function not working correctly.

This

My referencing for @bonly is getting screwed up
is next to useless as a description of whatever the error you're seeing. However, shouldn't you be returning your modified arrays (as arrayrefs), Or are you trying to pass the arrays by reference? If that's the case leave them as arrayrefs throughout your subroutine.

Incidently, you can write

my $a_ref = shift; # reference to input array A my @a = @$a_ref; # input array A

as

my @a = @{+shift};

and you don't need to initialise arrays and hashed when you declare them. They start out empty.

Update: s/shift/+shift/