I've got a medium-sized C++ app that uses C++ exceptions, and to my dismay,
CodeWarrior 8.2 is reporting 'Near data segment is bigger than 64K' when I
try to link it.

According to Ben Combee's whitepaper, 'Supporting Expanded Mode on Palm OS',
"Palm OS is able to maximize [the global] space by making A5 point into the
middle of your global variables". However, when I check the link map I see
that only 3K of data is below A5, and more than 32K is placed above it. The
'above' data (i.e., the 'initialized far data') consists of "__segtable__",
and what I assume are exception tables.

Is it not possible to split this area with the A5? I've never seen this
explicitly stated anywhere. Lubomyr Humetsky asked a similar question back
in February, but no response was posted to this group. I know it's possible
to fix things with expanded mode, but this would be something of a project
as I'm using a third party library that I know includes callbacks.

Short of removing my exception code, is there any way to compile this app
without resorting to expanded mode? Is there perhaps a more efficient way to
structure my exception handlers so as to shrink the exception tables? Or
should I just increment my SOL counter and start working on those callback
thunks?

Thanks for your help.


Jeremy Neal Kelly
Software Engineer
Business Software Development
Peapod, Inc.



-- 
For information on using the Palm Developer Forums, or to unsubscribe, please see 
http://www.palmos.com/dev/support/forums/

Reply via email to