[bt-devel] Windows Build status

Greg Hellings greg.hellings at gmail.com
Tue Feb 24 15:53:20 MST 2009


Eeli,

On Tue, Feb 24, 2009 at 4:17 PM, Eeli Kaikkonen
<eekaikko at mail.student.oulu.fi> wrote:
> Greg Hellings wrote:
>
>> Other, miscellaneous errors which only seem to appear in Visual Studio
>> in only two places:
>> 2>..\bibletime-svn\src\frontend\settingsdialogs\clanguagesettings.cpp(98)
>> : error C3083: '{ctor}': the symbol to the left of a '::' must be a
>> type
>>
>
> Please test if this one works now with my fix in svn. I don't understand why
> this was so and why it seems to work both ways. Maybe the code doesn't
> really work now...

As we discussed in #bibletime, this error was cleared up with your
commit to SVN.

>
>> 2>..\bibletime-svn\src\frontend\cinfodisplay.cpp(239) : error C2040:
>> 'i' : 'Rendering::CTextRendering::KeyTreeItem *' differs in levels of
>> indirection from 'int'
>> 2>..\bibletime-svn\src\frontend\cinfodisplay.cpp(246) : error C2440:
>> '=' : cannot convert from 'Rendering::CTextRendering::KeyTreeItem *'
>> to 'int'
>> 2>        There is no context in which this conversion is possible
>> 2>..\bibletime-svn\src\frontend\cinfodisplay.cpp(254) : error C2440:
>> '=' : cannot convert from 'Rendering::CTextRendering::KeyTreeItem *'
>> to 'int'
>> 2>        There is no context in which this conversion is possible
>>
>
> I can't see any other reason for this than the inner class KeyTreeItem which
> is inside CTextRendering. I committed a fix for this, too.

This is a slightly stickier issue - your commit didn't clear it up, as
I said in IRC, but I did find the solution just minutes after you
logged out.  If you look on line 234, you will see:
for( int i......)

Then on line 239, where the first error appears and again on lines
241, 249, 257 and 259 you see i referenced again.  However, the line
on 239 looks to me like a variable declaration.  Likely gcc/g++ takes
it as such and creates *another* variable with even narrower scope (or
does something even more sinister, like change your loop counter), but
Visual Studio is showing the proper response of producing an error
message, although a slightly confusing one.  By changing all of those
references from i to a new name, the file compiled cleanly.

That leaves only the strcasecmp/stricmp and dirent.h to work out, and
both of those appear to have a few options for very simple solutions.

>
> Probably I should have sent these small changes in this email and not
> committed them yet without testing, but I was in a hurry and too tired to
> think about that. I hope these work - otherwise I should revert them (though
> they both seem to work anyways).

I know some people have talked about using distributed version control
for such things as us collaborating and making many changes just to
get the system compiled on this cross-platform setting, while not
wanting to be forced to e-mail changes back and forth or run every
possible fix through SVN.  I'm willing to work with you to cooperate
in using one of those for these tasks - I know it would help me keep
track of having slightly different fixes for MinGW, Visual Studio and
Mac.  I'm always willing to spend a day or two setting up a new
technology that can save me having to do a 15 minute task manually. =)

--Greg



More information about the bt-devel mailing list