> Éppen ezeket kellene kerülni. Persze nem a Linux kernelben, mert azt 
> kifejezetten
> gcc-re írják. Nyilván van rá ok - ezt nem tudom.

Persze, hogy van rá ok. A szabvány nem dogma rendszer, hanem olyan szabályok
összesége, ami (elméletben) biztosítja a hordozhatóságot, és a nyelv működését.
Pont ezért nem tilthatnak, vagy szabályozhatnak mindent, mert az akár nyelv
használhatóságát is veszélyeztetné egyes platformokon, vagy akár összeségében
is.
Például a szabványokban legtöbbször egyes algoritmusokra (mint rendezés, 
keresés),
csak az van megszabva, hogy milyen gyors legyen, és nem maga a megvalósítás.
Ezzel lehetőséget adnak a fordítók íróinak, hogy platformtól, esetleg
helyzettől függően más és más megvalósítást használjanak, ami a program
hordozhatóságát, sebeségét igen csak javítja, de akár ugyan ennyi gonddal is
járhat.
Na meg a szabványban is vannak kiskapuk, és még ahol nincsenek, ott is lehet
máshogy értelmezni a leírtatkat.
Nem nagyok a fordítók közötti különbségek, és ha ismerünk egy ilyen problémát,
akkor nem tart a legtöbbször öt percnél tovább átírni a kódot.
Elég ritka, hogy keresztplatformos fejlesztésen kívül máshol is megjelenének
konkrét problémaként ezek kivételek, bár a legtöbb fordító (lásd gcc) pontos
listát vezet róluk.

> Attól, hogy valahol találunk egy új lehetőséget, még nem kell okvetlenül 
> használni.
> Csak komoly indokkal. Minden új lehetőség visszafelé inkompatibilitást  okoz.

Nem csak új nyelvi elemekre vannak ilyen kivételek. Például Cpp-ben a
sablonok feldolgozására több model is létezik, és nem ma került a sablon
a nyelvbe.

Khraath

_________________________________________________
linux lista      -      [email protected]
http://mlf2.linux.rulez.org/mailman/listinfo/linux

válasz