nwcc е малък C компилатор за Unix системи, които съм написал в моя СВОБОДНО ВРЕМЕ, за забавление и да докажа на себе си, че мога. Започнах проекта през август 2003 г., а защото имах работа и живот и няколко други хоби кодови проекти, тя ме заведе до есента на 2005 г., за да работи с различни конструкции на езика C.
И така, какво ново се nwcc доведе до масата? Най-важното е, нов код: Написах всичко от нулата - включително lexer, анализатор и гръб.
Кодът на nwcc е написан на C.
Тази версия не е предназначен за сериозна употреба, но поне nwcc е достатъчно силна, за да се (в резултат на което могат да съставят nwcc, както и) и би трябвало да е способна да се справи с най-малко някои малки програми съставят. Все още има някои неща липсват / съборена, но нещата се подобряват почти всеки ден (да кача моите промени в SF, когато аз добавям / оправя нещо интересно.)
Това отнема много работа, за да получите дори подмножество на езика C за съставяне, така че фактът, че нещо липсва или е сгрешил в nwcc не означава, че не ми пука за конкретната област на езика C или съставител дизайн ; Това означава само, че не съм успял да го правим добре, или дори изобщо, но
<силни> Характеристики силни>:.
- <Ли > Има някои C езиковите характеристики липсват, т.е. Най-вече подкрепа за плаваща запетая, bitfields и няколко други неща. Много други неща са счупени (вероятно има грешки в почти всеки език функция изпълнява от nwcc)
- Не съществуват разполага с мощност разработчик използва за установени масовите компилатори ще разгледа интересно, все още (освен, може би, функцията за защита на стека.) За съжаление. Няма нищо извън тъпо компилация; Няма поддръжка за създаване на споделени библиотеки, няма поддръжка за отстраняване на грешки или профилиране, нито нищо
- В момента има само данни за предоставяне 80x86 процесори (което генерира код за NASM Netwide сглобяване и работи на Linux, FreeBSD и OpenBSD)
- Няма абсолютно никаква оптимизация, което означава, генерирания код е много бавен в сравнение с продукцията на установените компилатори. Ще работя за това в скоро време, но трябва да се разбере, че главните ми притеснения в момента са код коректност и преносимост, а не скорост (това е достатъчно трудно да се направи бавно код работа!)
Какво ново в тази версия:
- Тази версия поправя няколко (наистина не е твърде много!) общите и PIC-специфични грешки, които бяха срещнати по време на съставянето на Tcl и mksh.
Какво ново във версия 0.7.8:
- Тази версия добавя поддръжка за Mac OS X на x86 и AMD64 и NetBSD на x86 системи. Различни независим от платформата бъгове също са фиксирани.
Какво ново във версия 0.7.7:
- Тази версия добавя поддръжка за Linux / PPC64 и поправки много НПК специфични бъгове.
Коментари не е намерена