On 5/24/06, Francesco Montorsi <f18...@ya...> wrote:
> Hi,
> I've found that there are only two small problems with wxLua builds
> with BCC: I've already solved one.
>
> The next is something which I tried but failed to fix: on some
> autogenerated binding files, e.g. modules/wxbind/src/file.cpp, line 2002
> there are ?: operators in form:
>
> wxString filespec = (argCount >= 3 ? lua2wx(wxlState.GetStringType(3)) :
> wxT(""))
This function is created from an %override in
bindings/wxwidgets/override.hpp. I've fixed and committed it.
> unfortunately borland gives an error for this saying that both returned
> variables of ?: operator must be of the same type.
> I.e. it doesn't like that wxT(""). Changing it to wxString(wxT("")) or
> to wxString(wxEmptyString) fixes the problem (not changing it to
> wxEmptyString, though).
>
> I've tried to scan all code of the wrapper and I've found that at line
> 3297 of genwxbind.lua there is:
>
> table.insert(codeList, " "..declare.." "..argName.." = (argCount >=
> "..argNum.." ? "..argItem.." : "..opt..");\n")
>
> however putting a
>
> if opt=="wxT(\"\")" then
> opt = "wxString(wxEmptyString)"
> end
>
> just before it does not produce any change. In fact I've hacked it a
> little more and I believe that the problem is not there as that lines
> correctly generates the wxString(wxEmptyString) code.
Hopefully not committed? :)
Regards,
John Labenski
|