Hacker News new | past | comments | ask | show | jobs | submit login

C11 language support seems to be complete since GCC 4.7.



My main point was about commercial compiler vendors.


Intel's C compiler also claims to support most of C11, as, apparently, does Clang. That covers the popular Unix compilers. Microsoft seems to be the big outlier, but they don't even care about C99.

I admit, though, I have no idea what commercial compilers are popular in the Windows world. I am under the impression that you either used Intel's compiler, Microsoft's compiler, or a free port of the Unix toolchain, but I don't really do Windows development.


You left out all the big commercial UNIX vendors, embedded market, real time operating systems, HPC and game development.


HPC is usually one of IBM XLC, Intel ICC, or GCC. All of them support most or all of the C11 language features.

For commercial unixes, it's hard to find documentation on C versions supported by Oracle Solaris Studio, but it was last released in 2011. HPUX ACC was last released in 2010, so I would be very surprised if it supported the 2011 C standard already. That doesn't meant it won't, but it does mean that it moves slowly. Not surprising, since large unix vendors operate in a market where stability is valued above most other things. IBM XLC already supports C11.

The embedded market tends to use GCC, from what I can tell, although it may vary widely by company. ArmCC is around, but the last major looks like it was in 2011 (minor updates since). I don't know what future versions will bring, but I'd be surprised if they don't at least end up supporting the memory model and atomics. These are /useful/ when writing embedded code.

RTOS development is pretty much the same situation as embedded.

From what I understand, game development usually isn't done in C, but I'd be very curious to know how the compilers there differ from compilers used for normal desktop applications. Which ones are normally used for game development?

EDIT: And, apparently, Microsoft is going to be adding some C11 features to C, as well as most of C99, because it will be piggybacking off the C++11 updates. So even the company that said it was ignoring anything newer than C90 is adding C11 features. That was a surprise to me.

Perhaps you could list some widely used compilers that have said they will not be moving towards C11 support?


  For commercial unixes, it's hard to find documentation on C versions supported by Oracle Solaris Studio, but it was last released in 2011. HPUX ACC was last released in 2010, so I would be very surprised if it supported the 2011 C standard already. That doesn't meant it won't, but it does mean that it moves slowly. Not surprising, since large unix vendors operate in a market where stability is valued above most other things. IBM XLC already supports C11.
While it's true the last release was in Dec. 2011, Solaris Studio receives updates and fixes (just as Visual Studio, etc.) do between releases that may contain significant improvements.

As for standards conformance, I "googled" it:

  http://docs.oracle.com/cd/E24457_01/html/E21990/bjabb.html
C11 and C++11 support are not yet available in any form, although the Solaris Studio compiler is one of the few that actually has full C99 compliance (yes, even those annoying floating point pragamas).

Support for C++11 is planned though:

  https://forums.oracle.com/forums/thread.jspa?messageID=10730210


I don't have data, it was a guess as usually commercial vendors only tend to support new standards if it brings them money.

I remember everyone ignored the ISO Extended Pascal, because Mac/Turbo Pascal were seen as the standard.

From HPC you left out Portland group, but they are giving good support.

For games I was thinking about the console vendors toolchains and vendors like Codeplay and SN Systems.


I have no doubt that all the big unix vendors will support C11 (if they don't already).




Consider applying for YC's Spring batch! Applications are open till Feb 11.

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: