
Borland никогда не публиковала исходники Borland C++ 2.0. Проект borland-reborn восстановил их из самого BCC.EXE 1991 года: 298 файлов на C и TASM, собранные оригинальным тулчейном Borland, дают исполняемый файл с тем же SHA-256. Автор начал с подбора компилятора и ключей и выяснил, что 29 модулей библиотеки собраны ещё Turbo C 2.01. Затем функции подгонялись по одной, пока не совпал каждый байт, и только после этого код переписали для людей: около 3100 имён и примерно 10 000 строк комментариев. По дороге нашлись ошибки самого Borland C++: strrchr читает байт перед пустой строкой, постинкремент битового поля через дальний указатель обрывает компиляцию с «Register allocation failure», а в файлы предкомпилированных заголовков попадает мусор из кучи. Перевод описания проекта, метода и основных находок. Читать далее
Continue to Habr →You are being forwarded in 6s — stay on this page