The ARM C compiler is a mature, industrial-strength compiler, based on Codemist Limited's multi-target, multi-language compiler suite (also known as the NorCroft C compiler). Derived compilers are used by, or distributed by, amongst others:
Advanced RISC Machines (for the ARM processor);
Acorn Computers (for their ARM-based personal workstations);
By default, the ARM C Compiler compiles ANSI C as defined by American National Standard for Information Systems - Programming Language C, X3J11/90-013, Feb 14, 1990.
The compiler also has a pcc mode, which accepts the dialect of C used by Berkeley Unix. In this mode, the compiler has been used to build a complete ARM-based BSD Unix system (the RISCiX system, marketed by Acorn Computers Limited, which has also achieved X/Open branding).
Pcc mode is selectable from the compiler's command line.
In its ANSI mode, the ARM C compiler has been tested against release 2.00 of the Plum-Hall C Validation Suite (CVS), which is widely considered to be the toughest C test suite available, and has been adopted by the British Standards Institute for C compiler Validation in Europe. In the language conformance sections of the CVS, it fails in only two trivial ways, both failures to produce required diagnostics:
An empty initialiser for an aggregate of complete type is not
diagnosed, e.g.
int x[3] = {};
Signed integer constant overflow is not diagnosed, but merely warned of, e.g.
case INT_MAX+1: ...
Wherever possible, the ARM C compiler adopts widely used command-line options which should be familiar to users of both Unix and DOS.