in reply to Tie::File strangeness with unshift

Without knowing much about Tie::File, it seems that you either don't know or have forgot about the concept of prototyping.
Whe you define a sub in Perl, you do it by writing
sub NAME { CODE }
There is another option though, which is prototyping. This means that you can provide the compiler with additional information to facilitate the calls to your subroutine. this prototyping is done with the following syntax
sub NAME (PROTOTYPES) { CODE }
Note the additional parens. When PROTOTYPES is the empty string, i.e. when you just provide parens, the compiler will always call your function in a void context and the @_ array will be empty.
You get the first few error messages, because the compiler "knows" that the sub is prototyped but it doesn't know the prototype yet, I don't know about the last few error messages.
In any case, changing your function declaration to
sub update_threads() {
should at least eliminate the first few error messages.

P.S.: Which part of your code has what line number?

Replies are listed 'Best First'.
Re: Re: Tie::File strangeness with unshift
by u914 (Pilgrim) on May 26, 2003 at 00:11 UTC
    Hah.. good point... i'd been ignoring those warnings, intending to fix them later.

    The "line 699" referred to (over and over, i shoulda cut that out!) is actually in the Tie:File code, i think.

    My guess is that the -w flag triggers those warnings when i read stuff using Tie::File in other parts of the script. They were there, and apparently not hurting anything, before.

    The new error is the last bit about FH, but i don't know what it means.