OSDN Git Service

* g++.old-deja/g++.pt/static11.C: Add xtensa-*-elf* to the
[pf3gnuchains/gcc-fork.git] / gcc / testsuite / g++.old-deja / g++.pt / spec30.C
1 #include <cstddef>
2
3 template <class T>      
4 struct S {
5   void *operator new (size_t);
6   void *operator new (size_t, int);
7   void operator delete (void*);
8 };
9
10 static void* s[2];
11
12 template <>
13 void* S<int>::operator new (size_t b) 
14
15   s[0] = ::operator new(b);
16   return s[0];
17 }
18
19 template <>
20 void* S<int>::operator new (size_t b, int)
21 {
22   s[1] = ::operator new(b);
23   return s[1];
24 }
25
26 template <>
27 void S<int>::operator delete (void*) 
28 {
29 }
30
31 int main()
32 {
33   S<int>* s1 = new S<int>;
34   S<int>* s2 = new(3) S<int>;
35
36   if (s1 != s[0] || s2 != s[1])
37     return 1;
38
39   delete s1;
40   delete s2;
41 }