OpenCores
URL https://opencores.org/ocsvn/openrisc/openrisc/trunk

Subversion Repositories openrisc

[/] [openrisc/] [trunk/] [gnu-old/] [gcc-4.2.2/] [gcc/] [testsuite/] [g++.old-deja/] [g++.pt/] [spec30.C] - Blame information for rev 841

Go to most recent revision | Details | Compare with Previous | View Log

Line No. Rev Author Line
1 149 jeremybenn
// { dg-do run  }
2
#include 
3
 
4
template 
5
struct S {
6
  void *operator new (size_t);
7
  void *operator new (size_t, int);
8
  void operator delete (void*);
9
};
10
 
11
static void* s[2];
12
 
13
template <>
14
void* S::operator new (size_t b)
15
{
16
  s[0] = ::operator new(b);
17
  return s[0];
18
}
19
 
20
template <>
21
void* S::operator new (size_t b, int)
22
{
23
  s[1] = ::operator new(b);
24
  return s[1];
25
}
26
 
27
template <>
28
void S::operator delete (void*)
29
{
30
}
31
 
32
int main()
33
{
34
  S* s1 = new S;
35
  S* s2 = new(3) S;
36
 
37
  if (s1 != s[0] || s2 != s[1])
38
    return 1;
39
 
40
  delete s1;
41
  delete s2;
42
}

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.