This is the mail archive of the ecos-discuss@sources.redhat.com mailing list for the eCos project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Undefined symbol _impure_ptr


When I use pure virtual methods I get an undefined symbol _impure_ptr from the 
function _cxa_pure_virtual. The function _cxa_pure_virtual is defined in 
libstdc++.a. This problem occurs when the child class is instantiated. You can 
write a parent with a pure-virtual method and a child derived from it without 
seeing this problem. 
 
This is find.
class Bob
{
  public:
    virtual void bob() = 0;
};
 
class Ken : public Bob
{
  public:
    virtual void bob();
};
 
This generates the undefined symbol
int main(int argc, char **argv)
{
  Ken k;
}
 
I suspect that he virtual tables are not created until they are needed. Has 
this been fixed yet? 

-- 
Before posting, please read the FAQ: http://sources.redhat.com/fom/ecos
and search the list archive: http://sources.redhat.com/ml/ecos-discuss


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]