public inbox for gcc@gcc.gnu.org
 help / color / mirror / Atom feed
* virtual tables were not compiled
@ 1999-02-16  6:17 amr
  0 siblings, 0 replies; 6+ messages in thread
From: amr @ 1999-02-16  6:17 UTC (permalink / raw)
  To: egcs; +Cc: andreas.hennig

hi folks!

I had some trouble with my mailer last time, so this mail might be a second version.

I have a rather strange problem with the gcc (says egcs.2.91.57 19980801/egcs-1.1).  Annoyingly, I had a similar problem some years back and found a simple solution to it (needless to say: I've forgotten it since).

The compiler compiles my module without any warnings, but does not produce the virtual tables and some inline functions , both are reported missing by the linker.  Well, i have implemented them and nm shows that they really are missing from
 the .o file, so it must be the compiler's fault.  The rest of the rather large project compiles nicely but contains similar constructs.  The missing warning/error message of the compiler really annoys me, as it turns the game into a blind-folded search 
for  the needle.

The only "noughty" thing I've done is a forward declaration so that classes con use each other:

class A;
class B;


class A:public C
  { B *b; ... };
class b:public D
  { A *a; ... };

Has anyone got an idea what might be the reason (or even the solution) for this problem?

Thanks
Andreas

(please reply to Andreas.Hennig@pmail.net as well, not only to the list)



^ permalink raw reply	[flat|nested] 6+ messages in thread

* RE: virtual tables were not compiled
@ 1999-02-28 22:53 amr
  0 siblings, 0 replies; 6+ messages in thread
From: amr @ 1999-02-28 22:53 UTC (permalink / raw)
  To: egcs

I think I've just solved it myself by playing around: somehow a 
	#pragma interface
showed up in my header file.  All's fine after reemoving it.  But is that correct?

Andreas


^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: virtual tables were not compiled
  1999-02-16 14:56 Mike Stump
@ 1999-02-28 22:53 ` Mike Stump
  0 siblings, 0 replies; 6+ messages in thread
From: Mike Stump @ 1999-02-28 22:53 UTC (permalink / raw)
  To: amr, egcs; +Cc: andreas.hennig

Try defining all things you declare, like the first out of line
virtual member in every class!?

> Date:     Tue, 16 Feb 1999 14:16:52 +0000
> From: amr@doc.ntu.ac.uk

> The compiler compiles my module without any warnings, but does not
> produce the virtual tables

^ permalink raw reply	[flat|nested] 6+ messages in thread

* virtual tables were not compiled
@ 1999-02-28 22:53 amr
  0 siblings, 0 replies; 6+ messages in thread
From: amr @ 1999-02-28 22:53 UTC (permalink / raw)
  To: egcs; +Cc: andreas.hennig

hi folks!

I had some trouble with my mailer last time, so this mail might be a second version.

I have a rather strange problem with the gcc (says egcs.2.91.57 19980801/egcs-1.1).  Annoyingly, I had a similar problem some years back and found a simple solution to it (needless to say: I've forgotten it since).

The compiler compiles my module without any warnings, but does not produce the virtual tables and some inline functions , both are reported missing by the linker.  Well, i have implemented them and nm shows that they really are missing from
 the .o file, so it must be the compiler's fault.  The rest of the rather large project compiles nicely but contains similar constructs.  The missing warning/error message of the compiler really annoys me, as it turns the game into a blind-folded search 
for  the needle.

The only "noughty" thing I've done is a forward declaration so that classes con use each other:

class A;
class B;


class A:public C
  { B *b; ... };
class b:public D
  { A *a; ... };

Has anyone got an idea what might be the reason (or even the solution) for this problem?

Thanks
Andreas

(please reply to Andreas.Hennig@pmail.net as well, not only to the list)




^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: virtual tables were not compiled
@ 1999-02-16 14:56 Mike Stump
  1999-02-28 22:53 ` Mike Stump
  0 siblings, 1 reply; 6+ messages in thread
From: Mike Stump @ 1999-02-16 14:56 UTC (permalink / raw)
  To: amr, egcs; +Cc: andreas.hennig

Try defining all things you declare, like the first out of line
virtual member in every class!?

> Date:     Tue, 16 Feb 1999 14:16:52 +0000
> From: amr@doc.ntu.ac.uk

> The compiler compiles my module without any warnings, but does not
> produce the virtual tables

^ permalink raw reply	[flat|nested] 6+ messages in thread

* RE: virtual tables were not compiled
@ 1999-02-16  6:27 amr
  0 siblings, 0 replies; 6+ messages in thread
From: amr @ 1999-02-16  6:27 UTC (permalink / raw)
  To: egcs

I think I've just solved it myself by playing around: somehow a 
	#pragma interface
showed up in my header file.  All's fine after reemoving it.  But is that correct?

Andreas

^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~1999-02-28 22:53 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
1999-02-16  6:17 virtual tables were not compiled amr
1999-02-16  6:27 amr
1999-02-16 14:56 Mike Stump
1999-02-28 22:53 ` Mike Stump
1999-02-28 22:53 amr
1999-02-28 22:53 amr

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).