Multiple inheritance broken when compiling for thumb target

andy parker andy.parker@oxsemi.com
Fri Feb 22 06:29:00 GMT 2002


Hello gcc community,

Following on from a message I sent to this group some weeks ago, I've 
still had no luck compiling a simple app which uses C++'s multiple 
inheritance.
My code contains the following classes:
class A
{
public:
              A();
     virtual ~A();
     virtual void F();
};


class B
{
public:
              B();
     virtual ~B();
     virtual void F();
};


class C : public A, public B
{
public:
              C();
     virtual ~C();
     void F();
};

At the link stage I do get an image but I also get an "unsupported 
relocation error" and thunks for my virtual functions are corrupted.

I've tried gcc-3.0.1/2/3/4 and they all behave in the same manner. I 
haven't succeeded in fully building intermediate snapshots due to issues 
with internal libstdc++ libraries but I have managed to build and use 
the linker from the snapshots 20020107,20020114, and 20020218 all with 
the same effect.

Hitherto I've got around this problem by building arm code, but I've 
arrived at the point where I really do need to generate some working 
thumb code.

Any help is greatly appreciated.
Thanks,
Andy
-- 
Andy Parker                       Oxford Semiconductor Ltd
Tel: +44 (0) 1235 824 944         25 Milton Park, Abingdon,
Fax: +44 (0) 1235 821 141         Oxfordshire. OX14 4SH
andy.parker@oxsemi.com            http://www.oxsemi.com

And on the third day, God said:
"Let there be div(D)=Pf, div(B)=0, curl(E)=-dB/dt, curl(H)=jf+dD/dt"


------
Want more information?  See the CrossGCC FAQ, http://www.objsw.com/CrossGCC/
Want to unsubscribe? Send a note to crossgcc-unsubscribe@sources.redhat.com



More information about the crossgcc mailing list