Re: Strange problem, strange fix

Janos Farkas (chexum@my-dejanews.com)
Fri, 5 Jun 1998 19:48:21 +0200


On 1998-06-03 at 13:29:22, McGee, Chris wrote:
> When compiling the kernel, I will get undeclared variable
> errors. They will be followed by parse errors, and the parse error
> will
> always be of this type: "locks.c:790: parse error before character
> 0357"
>
> Here is an example choke:
>
> locks.c: In function `flock_lock_file':
> locks.c:790: `err' undeclared (first use this function)
...
> make[2]: *** [locks.o] Error 1
>
> The thing that really escapes me is this: if I take this bit of
> code (which is line 790 from locks.c):
> <tab><tab>error = -EAGAIN;
>
> And replace it with this:
> <15 spaces>error = -EAGAIN;
>
> Locks.c will compile just fine. Things will go fine for a bit,
> until I get my next "parse error before character 0357", and the same
> fix will apply there also.

I'd be blaming your hardware. I've seen something like this, the
executable was changing at some bytes, and in your case, it seems
another file changes random bytes; in the first error, probably the "o"
in the "error" became a non-ascii character, making gcc not recognize
the variable name. Changing the file again made another byte change
somewhere... Very painful symptoms, I agree, and mostly caused by
memory errors. Another funny way to detect faulty memory chips is when
the kernel loading sometimes halts with CRC error...

-- 
Janos - Don't worry, my address is real.  I'm just bored of spam.

- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.rutgers.edu