The code (Objconv/mesher/modules/convert.cpp:
Code: Select all
struct CRegistry {
ConversionImplList list;
CRegistry();
~CRegistry()
{
for (ConversionImplList::iterator it=list.begin(); it!=list.end(); ++it)
{
delete it->second;
}
list.clear();
}
};
Code: Select all
deleting object of abstract class type ‘Converter::ConversionImpl’ which has non-virtual destructor will cause undefined behavior
delete it->second; //with the warning on second
(This is present in the standard release).