in reply to
Redirecting STDOUT from internal function with 5.6.1 restrictions
Random advice. Unless you really need them, do not use prototypes.
As threads like Are prototypes evil? and When to use Prototypes? point out, they don't do what you want them to, and do what you don't. Unfortunately the Tom Christiansen article that everyone points to has been removed from www.perl.com (why I do not know). However you can still find it at FMTYEWTK about Prototypes.
Update I'd only half-written this when I hit submit. I finished off the dangling sentences.