in reply to "uninitialized value in concatenation" is initialized and involves no concatenation that I can see.

It is almost certainly the 'or string' part of the 'Use of uninitialized value in concatenation (.) or string' message that is pertinent here.
  • Comment on Re: "uninitialized value in concatenation" is initialized and involves no concatenation that I can see.