Hacker News new | ask | show | jobs
by angersock 4072 days ago
C99 has always been requested by people trying to write portable code, and you nice folks just haven't been listening.

It's not an individual library--it's hack on hack on typedef on #define on hack to ensure compatibility, scattered across many projects.

If Microsoft is going to want to start winning over 'Nix developers, they need to get their shit together before somebody pairs a Windows port of Clang with a half-decent IDE.

EDIT:

A few things better than just a "aaaargh implement the standard" rant:

The threading and atomics in C11 would be really nice to have.

The features listed here ( http://blogs.msdn.com/b/vcblog/archive/2013/07/19/c99-librar... ) especially the snprintf support.

Last I checked, vsnprintf returns -1 instead of a useful character count when given a buffer too small, thus requiring use of _vsnprintf_s in a loop to try to figure out how much space is needed.

I'm not sure, but I think the most recent MSVC still doesn't support the "restrict" qualifier.

I'm sure there's other things as well.

EDIT2:

Part of the reason we want proper C99 support is that certain behaviors for implicit casting and whatnot change when done in a C++ compiler.

1 comments

The C99 Standard Library has been completed in 2015, including snprintf, with the exceptions noted in my post (tgmath.h and pragma macros).
Thanks!

Don't take our griping about standards-compliance too hard...speaking from experience, maintaining any STL-like codebase is a difficult effort. :)

Also, check here for some more examples of C99 tricks we might like (not tested with MSVC yet):

http://blog.noctua-software.com/c-tricks.html