das ist soweit klar. Aber wieso verträgt sich etwa ein kernel
der mit gcc3.x compiliert wurde, nicht mit einem Treiber der
mit gcc2.x compiliert wurde?
für ein konkretes problembeispiel fehlen da genauere informationen.
z.b. wie genau sich die fehler äußern, ob der selbe treiber mit gcc3.x übersetzt auch funktioniert, ob der treiber auf anderen kernels läuft usw.
kurzum: ein paar kreuztests würden da sicher viel aufschluß geben, ob das problem tatsächlich (ich kann ja so erstmal nur vermuten) von dem compiler kommt - und nicht etwa von librarys, hardware oder anderen softwareschnippseln.
Das ist mir absolut nicht klar, wieso es dort Probleme gibt.
mir auch noch nicht 
sicher kann man das fragliche sourcepacket auch mit egcs oder anderen compilern übersetzen … und dann nochmal testen.
STK