On 12 March 2015 at 10:06, Charles Forsyth wrote: > I've used it and lib9 in several other projects where other compilers > couldn't be used for licensing reasons, or because they were awful. > I'll add that the compilers are great for kernel and other New World systems work. Once stable on a given platform, they've been quite robust (I never suspect them at the start as a bug cause). Code quality is rarely a bottleneck for systems work in my experience (and there's a good reason that removing -O3 is a way to fix bugs with other compilers). If I were writing scientific computation, I wouldn't use C anyway, but if I did, I'd worry much more about the effectiveness of optimisation. For systems work? It's really, really low on the list. The cross-module type checking has also spotted a few things that every other compiler missed. Cross-compilation is easy and precise, with next to no configuration required, unlike nearly all the others; I rely on that a lot. It's worth the price of entry for that alone, for me, having suffered with gcc on an old OS project of mine; I'd never use it again for anything new. (Obviously I still use gcc for the 8 hour[!] Linux kernel compiles and builds.) lcc used to include all the code generators, so I suppose that would be just as good, except that it spits out assembly and you have to rely on external components, which still leaves you cross when attempting to cross-compile.