Linus Torvalds nennt GCC 4.9 “große Scheiße” und warnt vor einer Benutzung
Bei dem Thread ging es um eine zufällige “Panic” bei load_balance(), die anscheinend durch GCC 4.9 ausgelöst wird – beim Versuch Linux-Kernel 3.16-rc zu kompilieren. Das hat sich der Linux-Erschaffer selbst angesehen und kommt zum Schluss:
Ok, so I’m looking at the code generation and your compiler is pure
and utter *shit*.
(Ich sehe mir die Code-Generierung an und Dein Compiler ist ganz große *Scheiße*)
Man sollte vor GCC 4.9 warnen
Torvalds ist sogar der Meinung, dass GCC 4.9.0 komplett kaputt ist und kompletten Unsinn in Bezug auf das Spilling macht. Dieser Compiler hätte nicht mal aus dem Kindergarten rausgedurft. Man rede über das Niveau eines Fettsacks, der als Baby auf den Kopf gefallen ist.
Im Thread gibt es noch jede Menge technische Details, warum GCC 4.9 so katastrophal sei und was der Compiler für komische Dinge macht.
Auf jeden Fall sagt Linus Torvalds, dass es sich hierbei nicht um einen Bug im Kernel handelt. Es liegt am Compiler, der komplett unbrauchbaren Code erzeugt. Torvalds schlägt eine Warnung vor, damit niemand mit dem Compiler GCC 4.9.0 hantiert. Weiterhin rät er den Debian-Leuten, ihren niegelnagelneuen Compiler wieder eine Stufe zurück zu schrauben.
Der Thread geht eine ganze Weile weiter und auch später gibt es noch einige Beweise, dass sich GCC 4.9 komisch verhält.
Weil wir gerade von Debian GNU/Linux sprechen
Es sieht so aus, als würde die nächste große Version von Debian GNU/Linux “Jessie” mit Linux-Kernel 3.16 ausgeliefert. Zumindest kann man das aus dieser Meldung schließen.
Sowohl Kernel 3.14 als auch 3.16 würden ungefähr gleichzeitig die Unterstützung verlieren, wenn Debian 7 “Wheezy” das Ende seines Lebenszyklus (EOL) erreicht. 3.14 (März 2014 erschienen) würde von Greg Kroah-Hartman zwei Jahre lang unterstützt und Kernel 3.16 (erscheint voraussichtlich im Oktober 2014) vom Ubuntu-Team 15 bis 18 Monate lang.
Linux-Kernel 3.16 bringt allerdings mehr Unterstützung für aktuelle Hardware mit sich und braucht weniger Treiber-Backports. Deswegen wird man im Debian-Lager für Jessie wohl auf 3.16 setzen.
... weshalb die BSDs auf einen eigenen Compiler setzen, FreeBSD mit CLANG vorneweg. GCC war schon vor Jahren Schrott.
Er ist immer so direkt ...
[…] Torvalds nennt GCC 4.9 “große Scheiße” und warnt vor einer Benutzung Zum Original Blog […]
wobei man das hier auch erwähnen sollte:
http://www.pro-linux.de/news/1/21330/fehler-in-gcc-kann-falschen-kernel-code-erzeugen.html
SO schlimm ist das garnicht.