Orange C/C++ Compiler Version

RSS Feed
LADSoft Home Page

The Orange C/C++ Compiler is new work which includes an optimizing compiler, a tool chain, and an IDE.  The compiler itself uses various standard techniques, as well as some interesting techniques mentioned in the literature.

This compiler has support for the various C standards through C11, and full support for C++ 14.  The IDE for the compiler is a full featured C/C++ language IDE including a colorizing editor with code completion, integrated make facility, debugger, and a WIN32 resource editor.  

The tool chain is highly generic and the possibility exists to customize it for embedded platforms (or for that matter for example for other operating systems) using various linker customization files along with backend code generation programs.  The existing backend code generation programs support WIN32 and MSDOS executable formats, along with a backend generator that will output Intel and Motorola hex files.  The assembler uses a simple architecture description language to customize the code generation.  The C Run time library this compiler uses is an enhancement of the RTL used by CC386.  The Run time library in this package has WIN32 headers and an import library, many windows programs will compile with it although there are a few incompatibilities.  

An interesting variation on this compiler is the MSIL version which can generate either DLL or EXE files for .net.

This compiler will run on WIN32 and also on DOS, and generate 32-bit programs for both.   However, unlike in CC386, the DOS version is the same build as the WIN32 version, and relies on Japheth's HXDOS extender to operate in DOS.  But it will still build traditional DPMI targets e.g. for DOS32A and other extenders; the only feature missing that the DOS version of CC386 had is support for far pointers.

This version of the compiler and toolset was compiled in Visual Studio 2015 Express.   Recent work has also resulted in build scripts for MINGW,

Some of the applications which have been compiled and run successfully with this compiler and toolset include:

Compression programs are especially stressful for a compiler which is why there are so many of them...  I regularly test with these programs and with a variety of smaller applications that have had problems in the past.

This toolchain was also initially tested by compiling the CC386 toolchain, and by compiling the ORANGEC compiler itself, with this toolchain.

The future directions of this compiler are as follows:

This compiler is released under a Berkely-style license.

The source code is now on GITHUB.

This compiler is at version
Release Date Dec 10, 2017

ProductSHA256 ChecksumSize
Win32 setup package (WIN32 installer) 88c3b00f8f64e08b1aeb99293c6b9dd10226fc72114730ec828fdd9e661f8cbf 9MB
MSDOS setup package (MSDOS executable) 11f27b0aadd9bf7dcf712050b1885a8c4caa7e925ac2861968d1362aec370475 8MB
Zipped version of compiler executables 7030f7a3f1c9ccf4e653c6e22cfcc4c37da18f0d154e0f26737914f89e7140c1 12MB
Source code for compiler + RTL c4638090b5de6a11a2c59897262a3f3c9e379e0db6b6018ca0e298623ef3b2dc 27MB