document ms compiler problems with placement delete

This commit is contained in:
Jeff Hill
2002-10-24 18:12:03 +00:00
parent c7a8baee1a
commit 8dc8be9ad7
23 changed files with 168 additions and 59 deletions

View File

@@ -49,7 +49,7 @@ void timer::destroy ()
{
timerQueue & queueTmp ( this->queue );
this->~timer ();
timer::operator delete ( this, queueTmp.timerFreeList ) ;
//timer::operator delete ( this, queueTmp.timerFreeList ) ;
}
void timer::start ( epicsTimerNotify & notify, double delaySeconds )
@@ -225,13 +225,23 @@ void timer::show ( unsigned int level ) const
void timer::operator delete ( void * pCadaver )
{
throw std::logic_error
( "compiler is confused about placement delete" );
// Visual C++ .net appears to require operator delete if
// placement operator delete is defined? I smell a ms rat
// because if I declare placement new and delete, but
// comment out the placement delete definition there are
// no undefined symbols.
errlogPrintf ( "%s:%d this compiler is confused about placement delete - memory was probably leaked",
__FILE__, __LINE__ );
}
void epicsTimerForC::operator delete ( void * pCadaver )
{
throw std::logic_error
( "compiler is confused about placement delete" );
// Visual C++ .net appears to require operator delete if
// placement operator delete is defined? I smell a ms rat
// because if I declare placement new and delete, but
// comment out the placement delete definition there are
// no undefined symbols.
errlogPrintf ( "%s:%d this compiler is confused about placement delete - memory was probably leaked",
__FILE__, __LINE__ );
}