Я отслеживаю, что может быть утечкой памяти из-за глобальной перегрузки оператора new и т. Д. ... код для этого прекрасно компилируется в VC ++, но вызывает проблемы в GCC:
15: namespace std { class bad_alloc; };
16:
17: void * operator new( size_t size ) throw ( std::bad_alloc );
18: void operator delete( void * p ) throw ();
19: void * operator new[]( size_t size ) throw ( std::bad_alloc );
20: void operator delete[]( void * p ) throw ();
Выдаются следующие ошибки:
../zylibcpp/../zylibcpp/utility/MemoryTracker.hpp:17: error: invalid use of incomplete type ‘struct std::bad_alloc’
../zylibcpp/../zylibcpp/utility/MemoryTracker.hpp:15: error: forward declaration of ‘struct std::bad_alloc’
../zylibcpp/../zylibcpp/utility/MemoryTracker.hpp:19: error: invalid use of incomplete type ‘struct std::bad_alloc’
../zylibcpp/../zylibcpp/utility/MemoryTracker.hpp:15: error: forward declaration of ‘struct std::bad_alloc’
Что здесь происходит?