Hi all, Sorry Joshua, I had no time to try your modifications yesterday... and Leonardo fixed the source files now ;o) Compiles fine!
Philo Leonardo Zide a écrit : > I removed the first function, I don't know how it got added. I > probably clicked something on the class wizard by accident. I've > fixed the scoping of i too, I cause that kind of error in VC6 a lot > whenever I use newer compilers. > > Thanks for looking into the problems, it saved me having to > reinstall VC6. I used to have it installed at work and on my laptop > but I upgraded both recently and haven't installed it yet. > > > On Mar 14, 2007, at 10:28 PM, Joshua Delahunty wrote: > > >>John wrote: >> >>>>I haven't pay attention to LeoCAD for a while but could somebody >>>>please tell me where I can download the latest version? I know a >>>>lot >>>>of work happened since 0.75 (the one on the website. >>>> >> >>Philo wrote: >> >>>None that I know... and latest source version doesn't compile with my >>>old VC++6.0 :-( >> >>I think the following two source code fixes will fix Philo's >>problem (I >>am able to build with them under VC 6)... >> >>1) Line 55 of Propspgs.cpp reads thus: >> ON_EN_CHANGE(IDC_PROP_SUM_NAME, >>&CPropertiesSummary::OnEnChangePropSumName) >> >>VC 6.0 doesn't like this syntax, throwing 6 errors based on it. >> >>Replace that line with: >> ON_EN_CHANGE(IDC_PROP_SUM_NAME, OnEnChangePropSumName) >> >>(that is, remove the text "&CPropertiesSummary::") >> >>the CPropertiesSummary:: scoping is unnecessary, since this use is >>within that scope already, and there is no reason to use the >>address-of >>operator on OnEnChangePropSumName, since it is a member function of >>CPropertiesSummary, and would be furnished as an address by the >>compiler >>in any case (furthermore, the function doesn't actually do anything >>yet >>:-)). >> >>2) Lines 889 and 909 cause a conflict with one another. The scoping >>rules of variables declared in for() statements changed in the ANSI >>standard, and VC 6 is unhappy about this usage; it sees that i has >>been >>declared twice within the scope of SystemUpdateModelMenu. There are a >>couple fixes to this. The loop at lines 889-890 could be changed to >>use >>a different identifier (such as i2 -- see my alternate instructions >>below for the best type of solution); the lines from 909-947 could >>also >>be changed. >> >>EASIEST STEP 2 SOLUTION if you want as few code changes as possible >>The easiest is to change line 909 from: >> for (int i = 0; i < ModelList.GetSize(); i++) >>to: >> for (i = 0; i < ModelList.GetSize(); i++) >>END EASIEST STEP 2 SOLUTION >> >>(just remove the int declarator on i) >> >>this will "reuse" i from the first declaration and build cleanly. >> >>If you just want it building under VC 6, you're done. >>Unfortunately, the >>second solution will then cause Visual Studio 2005 to stop building >>because of line 909. Eventually, a change something like this is >>necessary: >> >>ALTERNATE STEP 2 SOLUTION that is more universal: >>- leave line 909 alone (don't perform both of these solutions) >>- change 889-890 from: >> for (int i = 1; i < LC_MODEL_MENU_MAX; i++) >> Menu->DeleteMenu(ID_MODEL_MODEL1 + i, MF_BYCOMMAND); >>to: >> for (int j = 1; j < LC_MODEL_MENU_MAX; j++) >> Menu->DeleteMenu(ID_MODEL_MODEL1 + j, MF_BYCOMMAND); >> >>(change all references to identifier i to a new identifier j) >>END ALTERNATE STEP 2 SOLUTION >> >>Note that I am not building 3dsftk, jpeglib, libpng or zlib in the >>version I'm working with, so I had to unload those projects in >>order to >>get the link to work properly. >> >>Note further that, in order to get the source to fully build with >>Visual >>Studio .NET, I had to add wininet.lib to the list of link libraries >>- I >>think this is possibly related to buggy behavior when VS.NET converted >>the .dsw file to a .vsproj file, since VC 6 was able to build fine >>without this adjustment. >> >> -- joshua >> >>_______________________________________________ >>Leocad mailing list >>[email protected] >>https://list.gerf.org/listinfo/leocad >> > > > > ______________________________________________________________________ > This email has been scanned by the MessageLabs Email Security System. > For more information please visit http://www.messagelabs.com/email > ______________________________________________________________________ > > _______________________________________________ > Leocad mailing list > [email protected] > https://list.gerf.org/listinfo/leocad > _______________________________________________ Leocad mailing list [email protected] https://list.gerf.org/listinfo/leocad
