This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Re: b20: c++ bug or feature?
- To: Mike Stump <mrs at wrs dot com>
- Subject: Re: b20: c++ bug or feature?
- From: Andres Heinloo <lka at physic dot ut dot ee>
- Date: Fri, 20 Nov 1998 11:17:43 +0200 (EET DST)
- cc: khan at xraylith dot wisc dot edu, egcs at cygnus dot com
On Thu, 19 Nov 1998, Mike Stump wrote:
> > > OhharaDraw.h:130: sorry, not implemented: object size exceeds normal limit
> > > for virtual function table implementation, recompile all source and use
> > > -fhuge-objects
>
> > Any target platform that does not use vtable "thunks" is affected by this.
> > For example, HPUX is as affected by it as ix86-win32. ix86-linux uses
> > vtable thunks by default, so it works there.
>
> > Solutions?
>
> > (1) Recompile *everything* with -fvtable-thunks. I don't know if it works
> > for x86-win32 targets.
> > (2) Recompile *everything* with -fhuge-objects. Hardly an option for real
> > life code. Also, I don't know how well debugged -fhuge-objects really
> > is, so you might be running into other compiler/library bugs there.
>
> There are 0 known bugs with it. Last I knew, it worked well. If
> people really don't like the 32K limitation, this is the `right'
> solution.
>
> 4) Learn to use new/malloc instead of having tons of stuff in an
> object, learn to make objects smaller. 45K objects seem rather
> large to me. Show us your code and defend the size, the other
> other person to ever hit this that I know of had very large data
> arrays in their objects that I took one look at and thought to
> myself, boy I wonder just how many static limits on things his
> code has.
Probably the only thing I can do is to use -fhuge-objects. I could inform
gdb-- developers, but I don't think they are going to re-implement gdb--.
The object in question is quite large indeed, although it doesn't seem to
have large data arrays. You can see it from the gdb output I attached.
Andres.
OhharaDraw_gdb.gz