User forums > Help

Errors building C::B rev2688

<< < (3/8) > >>

mandrav:
I need someone who has this problem to try the following:

Insert #include <wx/arrstr.h> at the top of src/sdk/scripting/bindings/sc_base_types.h (just below #include <wx/string.h>).
Does this fix it?

feisal:

--- Quote from: mandrav on July 06, 2006, 10:25:20 am ---I need someone who has this problem to try the following:

Insert #include <wx/arrstr.h> at the top of src/sdk/scripting/bindings/sc_base_types.h (just below #include <wx/string.h>).
Does this fix it?


--- End quote ---
revision 2698, has this already.  But it still does not compile, same error about cannot find a matching function call
to 'Push(SQVM*&, const wxArrayString&)'

Fedora Core 5, gcc  4.1.1

mdelfede:

--- Quote from: feisal on July 06, 2006, 03:52:05 pm ---
--- Quote from: mandrav on July 06, 2006, 10:25:20 am ---I need someone who has this problem to try the following:

Insert #include <wx/arrstr.h> at the top of src/sdk/scripting/bindings/sc_base_types.h (just below #include <wx/string.h>).
Does this fix it?


--- End quote ---
revision 2698, has this already.  But it still does not compile, same error about cannot find a matching function call
to 'Push(SQVM*&, const wxArrayString&)'

Fedora Core 5, gcc  4.1.1

--- End quote ---

The same here, with gcc 4.1.0 SuSe and revision 2699.

TDragon:
Same here, using GCC 4.1.1 on XP.

The error message, at least, seems fairly straightforward. CompileOptionsBase::GetLinkerOptions returns type wxArrayString, for which there is no function to directly push it on the stack. I don't pretend to understand the SqPlus sources very well, but it seems that the ReturnSpecialization class handles calling the various types of functions, and if there is no specialization for wxArrayString than the compiler would choose the function in SqPlusConst.h that is throwing the error.

I can't see how GCC 3.4.5 would compile it, but 4.1.1 not; so I'm probably missing something important.

mdelfede:

--- Quote from: TDragon on July 06, 2006, 08:32:53 pm ---Same here, using GCC 4.1.1 on XP.

The error message, at least, seems fairly straightforward. CompileOptionsBase::GetLinkerOptions returns type wxArrayString, for which there is no function to directly push it on the stack. I don't pretend to understand the SqPlus sources very well, but it seems that the ReturnSpecialization class handles calling the various types of functions, and if there is no specialization for wxArrayString than the compiler would choose the function in SqPlusConst.h that is throwing the error.

I can't see how GCC 3.4.5 would compile it, but 4.1.1 not; so I'm probably missing something important.

--- End quote ---

Maybe gcc 3.4.5 uses "void SqPlus::Push(SQVM*, const void*)" and 4.1.1 doesn't accept the implicit type conversion ???

<edit>
No... adding a definition for SqPlus::Push(SQVM*, wxArrayString *) leads to duplicate definition error, as it's defined in sc_base_types, line 21...

It must be caused from the extra & in 'Push(SQVM*&, const wxArrayString&)', the funcs defined are all of kind 'Push(SQVM*...)'.



Navigation

[0] Message Index

[#] Next page

[*] Previous page

Go to full version