Sigh......
I guess I'll just have to learn to live with it.....
Just to clarify... Does the design decision that causes this error come from Palm or
Codewarrior?
Dan
A once happy virtual function guy
Ben Combee wrote:
> > FYI: I haven't investigated this deeply; I hope someone from
> Metrowerks can
> > shine some light on why the problem exists, why it hasn't been solved
> and
> > when it will be solved. This *really* is a disability for C++
> programmers
> > and in my opinion the C++ lanaguage brings a lot of advantage to Palm
> > programmer if only the C++ implementations where *fine* tuned to the
> unique
> > properties of the Palm paltform.
>
> C++ virtual tables are constant data while the program is running.
> However, they aren't constant before the program runs, since Palm OS can
> move around the blocks of memory that hold code. At launch time, the
> runtime code has to copy the vtable into read/write memory (the global
> space), then make modifications to point all the function pointers in
> the vtable to the correct location in the now fixed code segment.
>
> The purpose of no-global launches is to quickly run a Palm application
> to respond to some system event. Palm decided that these launches would
> not have a global space on the heap allocated, since it takes extra time
> to setup that space, copy the initialization data, and handle the
> relocations.
>
> We're working on some things that might help in the future, but nothing
> I can announce just yet. Making C++ work better is one of the primary
> goals of the Palm compiler team for our next release.
--
For information on using the Palm Developer Forums, or to unsubscribe, please see
http://www.palmos.com/dev/tech/support/forums/