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

I hate Microsoft as much as the next guy, but FYI, MSVC 2013 supports most of C99.



Maybe by Microsoft's definition of 'most'.

* no variable-length arrays

* no qualifiers in parameter array declarators (`int x[static 10]`, etc.)

* no `restrict` keyword

* no compound literals

* no designated initializers

There's probably more.

On the web you'll find the same quote copy & pasted over and over saying that support for compound literals and designated initializers was supposedly added in VS2013, but it does not appear to be true. Either that, or I haven't found the hidden switch to enable it. By the way, C code still needs to be compiled as C++ to get anything beyond C89 to work, which should give you a clue as to how serious Microsoft is about C99.

What's true though is that stdbool.h was added. It's a start, I guess...


That's good to hear, and maybe we can finally move on to more universal use of a 14 year old standard!




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

Search: