Mercurial > hg > CbC > CbC_gcc
view gcc/testsuite/g++.old-deja/g++.pt/spec30.C @ 111:04ced10e8804
gcc 7
author | kono |
---|---|
date | Fri, 27 Oct 2017 22:46:09 +0900 |
parents | |
children |
line wrap: on
line source
// { dg-do run } #include <cstddef> template <class T> struct S { void *operator new (size_t); void *operator new (size_t, int); void operator delete (void*); }; static void* s[2]; template <> void* S<int>::operator new (size_t b) { s[0] = ::operator new(b); return s[0]; } template <> void* S<int>::operator new (size_t b, int) { s[1] = ::operator new(b); return s[1]; } template <> void S<int>::operator delete (void*) { } int main() { S<int>* s1 = new S<int>; S<int>* s2 = new(3) S<int>; if (s1 != s[0] || s2 != s[1]) return 1; delete s1; delete s2; }