[linux-l] Re: C++-Kommentare in C

Oliver Bandel oliver at first.in-berlin.de
Sa Okt 29 12:25:25 CEST 2005


On Sat, Oct 29, 2005 at 08:09:44AM +0000, Rocco Rutte wrote:
> Hi,
> 
> * Oliver Bandel [05-10-28 12:41:52 +0200] wrote:
> >On Thu, Oct 27, 2005 at 04:04:23PM +0000, Rocco Rutte wrote:
> 
> >>(ich lasse mich da liebend gern eines besseren überzeugen) und 
> >>zweitens muss man mit ANSI C nicht nur wegen des Kommentierstils 
> >>brechen...
> 
> >Allerdings!
> 
> >Nur wegen des Kommentars (der Faulheit des Prorammierers)
> >sollte man nicht den benutzten Standard "brechen".
> >Dann kann man ja gleich alle neuen Sprach-features nutzen - das
> >würde dann IMHO Sinn machen.
> 
> Yepp. Obwohl man ja ein paar C99 Sachen auch einfach so faken kann (zum 
> Beispiel Code und Deklaration mischen, indem man einfach {}-Blöcke 
> definiert,

Das sind keine Fakes, das sind korrekte C-Features.

> oder variable Array-Größe mit alloca() und so weiter).


Naja, das macht aber keine automatisch sich vergrößernden Arrays.
Man muß das immer wieder neu allokieren.
Da wäre IMHO  realloc() die bessere Wahl.


> 
> >Der Code, den solch ein Programmierer geschrieben hat, würde
> >ich gleich noch kritischer beäugeln, denn es kann sein, daß
> >der Kolleje auch ansonsten eine recht laxe Einstellung zur
> >Programmierung hat (keine NULL-Pointer-tests usw.).
> 
> Sowas hatten wir mit dem Sidebarpatch für mutt (da waren auch noch ganz 
> andere eklige Sachen drin, die ich nicht fürs Archiv zitieren möchte), 
> aber sonst: ACK.

Naja, wie hieß dieser komische Server für das BGP?
(quagga?)
Da habe ich spassenshalber mal in die Sourcen geschaut,
als es da vor ca. 1 1/2 Jahren oder so (?) ein Problem gab
wegen irgendwelcher Hacks und so.

Da war ein fork() für den Daemon - also ganz grundlegender
Code, der am Beginn des Programmlaufs ausgeführt wird -
mit falschen Rückgabewerten getestet worden.
Jaja, im Allgemeinen gibt fork() ja auch 'n Child zurück,
aber wenn nicht...?!
Gerade, wenn der Rechner unter hoher Last steht... kann es auch mal anders
laufen - dann den Rückgabewert falsch getestet und es knallt.

Naja, habe dann einen Entwickeler angemailt, und der meinte, er fixt das problem dann.

Also, nach deisem kurzen Ausflug in den Source von diesem Teil
hatte ich die Schnauze voll von dem Scheiss.
Ich hatte ja schon geahnt, daß das Programm - wie so viele Software -
"ein Pfund Gehacktes" ist.
Aber daß es schon in so grndlegendem Code - gleich am Anfang -
so viel Scheiss drin steht... :(

Solche Naenbären, die da programmieren, die hätten mit
rigider Typprüfung so ihre Probleme - also mit Sprachen,
die den Leuten auf die Finger hauen, wenn sie scheisse schreiben.

Aber genau für soclhe kruden Hacker wäre es notwendig...


Es ist, so denke ich manchnal, wohl ein Wunder, daß Linux alles in allem
so stabil läuft. ;-(

Ciao,
   Oliver



Mehr Informationen über die Mailingliste linux-l