aboutsummaryrefslogtreecommitdiff
path: root/gcc/testsuite/g++.old-deja/g++.law/operators23.C
blob: 6403655093461a392287e42d5c6fc3c3d5ffe559 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
// GROUPS passed operators
// opr-new file
// From: (The Crossjammer) <xjam@cork.cs.berkeley.edu>
// Date:     Mon, 23 Nov 92 23:35:26 PST
// Subject:  g++-2.3.1 : Incorrectly calls overloaded operator new
// Message-ID: <9211240735.AA06872@cork.CS.Berkeley.EDU>


#include <stdio.h>
#include <stdlib.h>

class blah {
     int j;
   public:
     blah();
     void *operator new(size_t size);
};

inline blah::blah() : j(0) {
	  
}


void *blah::operator new(size_t size) {
     printf ("FAIL\n");
     exit (1);
     return NULL;
}

int main(int arg, char** argv) {
     blah* blahPtr;

     blahPtr = new blah[100];
     printf ("PASS\n");
}