If you define fopen in the same package as you use it it works fine. When passing the bareword to the mmm package, however, it gets interpreted as *mmm::F instead of *main::F, so the file has been opened but in the wrong glob.
Given the prototype, this is arguably a bug - the bareword 'F' should be coerced to a glob in the caller's context. However there is no guarantee it is easily fixable - I suspect that it is currently passed as a simple string, and not turned into a glob reference until the actual assignment in mmm::fopen().
Hugo
In reply to Re: filehandle question
by hv
in thread filehandle question
by warpod
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |