On Sep 12, 2013, at 9:24 AM, Tom Browder wrote:

> Note that C99 would help initializing args by allowing the unions to
> be initialized.  Thus  I have a vested interest in working that issue
> (including wanting '//' comments).  How can I help with that?

Does MSVC support static union initialization?  They don't strictly support 
C99, though there was news back in July that MSVC2013 is providing "nearly" all 
of C99, finally.  [0]

Still, the measure for migrating to C99 has been demonstrating (and making the 
accommodations for) a strict C89 posix compilation baseline.  Basically, it's a 
matter of setting the compilation flags to strict C89 mode and fixing the 
warnings/errors that ensue.  Right now, we predominantly use --std=gnu89 and 
--std=gnu99 to catch the most variety.  [1]

The trick for portability is to turn off the GNU extensions and still have code 
that works reasonably well.  This should be doable without eliminating features 
or using preprocessor platform definitions too.  Once we baseline, we can think 
about s/gnu99/c11/ and s/gnu89/gnu99/...  I'd like to get us compiling cleanly 
with std=c++98 too (i.e., all with a c++ compiler), but that's a bit of warning 
work to clean up.

Cheers!
Sean

[0] 
http://blogs.msdn.com/b/vcblog/archive/2013/07/19/c99-library-support-in-visual-studio-2013.aspx
[1] It's set in misc/CMake/CompilerFlags.cmake


------------------------------------------------------------------------------
How ServiceNow helps IT people transform IT departments:
1. Consolidate legacy IT systems to a single system of record for IT
2. Standardize and globalize service processes across IT
3. Implement zero-touch automation to replace manual, redundant tasks
http://pubads.g.doubleclick.net/gampad/clk?id=51271111&iu=/4140/ostg.clktrk
_______________________________________________
BRL-CAD Developer mailing list
brlcad-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/brlcad-devel

Reply via email to