On May 9, 2005, at 2:02 PM, Godfrey van der Linden wrote:
Oh I think I know what it is. Sorry I was on the wrong track all
together. This is a problem with in function static constructors. In
gcc 4.0 we realised that they just don't work inside the kernel
environment.
The problem is that these 2 functions are required to take and release
a lock. Unfortunately it doesn't tell us what sort of lock to take
and release. In the kernel that just isn't acceptable.
Hence gcc4.0 has a source incompatibility. It does not reliably
implement in function static construction.