[PATCH 5/5] Limit the scope of gasidx in add_plan_to_notes

Anton Lundin glance at acc.umu.se
Fri Jul 11 04:55:27 PDT 2014


On 11 July, 2014 - Lubomir I. Ivanov wrote:

> On 11 July 2014 10:13, Anton Lundin <glance at acc.umu.se> wrote:
> > glance> for (int i=0;i<3;i++) ?
> 
> for that to work on older versions e.g. MSVC 2003, /Tp has to be used
> (like jeff mentioned, we can mark the input to be C++) and then extern
> "C" wrapping would be needed to preserve the binary interface.
> 
> on even older versions like MSVC 1998, /Tp exists but the actual
> intermix feature from c99 is a bit messed up. the lexical scanner does
> recognize it, but then it assigns a non-local scope to the iterator.
> so you can do things like:
> 
> for (int i = 0; i < 10; i++)
>     puts("stuff");
> i = 0; // <---
> 
> i would advice against this particular feature if targeting older
> MSVC, but for third party source projects i usually follow their usage
> of "for" loops.
> for my own managed projects, this:
> 
> int i = 0;
> while (i < ...) {... i++ }
> 
> remained as a habit.
> 

Msvc 2013 seems to get it right, and i can gladly argue that we
shouldn't support any older Msvc's just for the sake of it.

How many do actually build subsurface for windows? You, Dirk and maybe 1
2 other dev's, but thats probably it. Dirk uses mingw, and you would
know to use msvc 2013, so it doesn't feel like a show stopper for me =)

But, if we as always, if we know that things break with older msvc's we
should document it.

//Anton

-- 
Anton Lundin	+46702-161604


More information about the subsurface mailing list