static inline operator generates an external symbol
Martin v. Loewis
martin@loewis.home.cs.tu-berlin.de
Tue Jan 18 12:42:00 GMT 2000
> Therefore, the compiler itself must create the declaration
> regardless of using builtins or not.
Indeed. According to the C++ standard, 3.7.3, [basic.stc.dynamic]/2:
# The following allocation and deallocation functions (18.4) are
# implicitly declared in global scope in each translation unit of a
# program
#
# void* operator new(std::size_t) throw(std::bad_alloc);
# void* operator new[](std::size_t) throw(std::bad_alloc);
# void operator delete(void*) throw();
# void operator delete[](void*) throw();
It is not possible to declare those functions static in Standard C++,
period.
Regards,
Martin
More information about the Gcc-bugs
mailing list