in reply to Putting an array into a hash gives an unexpected reference to the hash itself.

\@maintainers is ref to an array. You use the same ref twice. I think you want to use  [ @maintainers ] : a ref to an anonymous array with values of @maintainers.

But, if  @maintainers contains some ref to other data, you will have the same problem, but one level deeper.

English is not my mother tongue.
Les tongues de ma mère sont "made in France".