> Issuing a second make solve the problem, gcc compile the
> file without problem.
>
> Is this hardware or software problem?
Software is normally deterministic; doing same same thing again and
again should always give the same answer.
That assumption partially relies on the assumption that hardware is
always deterministic. So if you see that doing the same thign a second
time gives a different answer, it could be a hardware problem - gcc
will not, on its own, decide to do something else.
Of course, it might also be a problem of the operating system. For
example, if the file system returns a different file contents the
second time due to a bug in the caching system, the same effect could
occur. If you are using standard, well-tested file systems
(e.g. ext2), this is rather unlikely.
Martin