On Fri, 28 Feb 2003, guenter geiger wrote:
On Fri, 28 Feb 2003, Daniel Heckenberg wrote:
- Problem: 'for' scoping for VC++ 6.0 isn't compatible with the "new ISO"
style scoping that GCC seems to support/default to.
E.g. for (int i=0; i < i_max; i++) func(i); for (int I=0; i < i_MAX; i++) // causes VC++ redefinition error func2(i);
Short-term Solution: I just removed any variable redefinitions that caused compiler errors under VC++. This may now result in warnings on other platforms. This is undesirable and I don't want to suggest that the code should conform to VC++ non-conformance...
This is not non-conformance, if you find constructs like the ones you mentioned, you have to change them, this is true for all platforms.
int i; for (i=0;...) ...
Trying to compile GEM on linux yields problems now:
for (int i=0;i<10;i++) a[i] = b[i]; for (i=0;i<10;i++) a[i] = b[i];
does not work.
should be
int i; for (i=0;i<10;i++) a[i] = b[i]; for (i=0;i<10;i++) a[i] = b[i];
... changed and checked in for Geos/newWave.cpp Pixes/pix_convolve.cpp
Guenter