On Wed, 3 Sep 2003, Leopold Toetsch wrote: > Andy Dougherty <[EMAIL PROTECTED]> wrote: > > I don't know why this didn't show up anywhere else, but on Solaris 8 with > > perl5.00503, the imcc/t/syn/file.t tests that tried to load temp.pbc were > > all failing. The reason turned out to be that the temp.imc files hadn't > > been flushed to disk yet. Explicitly closing the files ensures > > that they are written before we try to compile them. > > Strange but anyway applied. Thanks.
Actually not so strange in retrospect, but it did take me a few minutes to figure it out. It's a manifestation of the flush-before-exec issue. Starting with 5.6.0, perl attempts to automatically flush output buffers under such circumstances, though after romping through util.c:Perl_my_fflush_all() (and the supporting Configure code) you'll likely conclude it's always safer to explicitly flush buffers yourself! In my case, I was using 5.00503, which does whatever the underlying OS/stdio does. Anyway, thanks. -- Andy Dougherty [EMAIL PROTECTED]