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 Feb 3, 2017

ProductSHA256 ChecksumSize
Win32 setup package (WIN32 installer) 432d2e2002a51122034baf88d977fa64e5ce88571fc4b77bc7c5fcf5019ca992 9MB
MSDOS setup package (MSDOS executable) 1c4a2cf55a7132bc008eeb1fe8caa95504ba5acf918f9a8034ead6e1f9428308 8MB
Zipped version of compiler executables 4b9f1fbc10161366a126d2e36374d13739734aa0b05a7e09bebf2638651ea126 12MB
Source code for compiler + RTL 04316f3f89e14fcc7731f11fe30f476e705b144d1d08c6eff90e284dc6497884 27MB