On Mon, 2003-06-02 at 11:32, John Stark wrote:
>
>
> An error came up in these files:
> cc-1168 CC: ERROR File = DXWindow.C, Line = 821
> cc-1168 CC: ERROR File = ResourceManager.C, Line = 37
> cc-1168 CC: ERROR File = ResourceManager.C, Line = 147
> cc-1168 CC: ERROR File = ResourceManager.C, Line = 163
> cc-1168 CC: ERROR File = ResourceManager.C, Line = 176
> cc-1168 CC: ERROR File = ToolSelector.C, Line = 239
>
> All have the same error:
> The indicated type conversion is invalid.
> while (s=(Symbol)iter.getNext()) {
>
I should have known.
> The problem is that Symbol is of type int: (SymbolManager.h:typedef int
> Symbol;) so the cast from 64-bit pointer to int fails. Replacing with
> the following sorts it out:
> while (s=*(Symbol*)iter.getNext()) {
> (But is this what is intended?)
>
No. That would just crash. The value stored is really a Symbol
and not a Symbol*. I think I have to do something with memcpy to make
this work.