in reply to There be dragons (or, perl5.8's open stringref breaks...)

There's two problems here. The first is stat() and the second is sysread() (and, I would presume, syswrite() as well). stat() treats scalar filehandles as unopened. If you comment out that section in File::Copy::copy(), sysread() treats it as a "Bad file descriptor". I would argue that both are bugs, but that's because they violate the Principle of Least Surprise.
  • Comment on Re: There be dragons (or, perl5.8's open stringref breaks...)

Replies are listed 'Best First'.
Re^2: There be dragons (or, perl5.8's open stringref breaks...)
by belg4mit (Prior) on Apr 26, 2005 at 17:33 UTC
    So it is arguably doing the right thing and they are not bugs, at least not bugs in the binary but in the dox somewhere. As mentioned there, they don't actually exist. At least, such an argument could be made for sys*. Stat ought to be able to fake most things for a scalar easily enough, although one could argue sys* aren't that hard either. It's either a gross oversight on somebody's part, or a big can of worms they decided to consider Somebody Else's Problem.

    --
    I'm not belgian but I play one on TV. On dit que je parle comme un belge aussi.

      They aren't bugs in implementation, but in specification. This is why you need requirements and design reviews along with code reviews.

      The Perfect is the Enemy of the Good.