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++.jason/] [operator.C] - Blame information for rev 816

Details | Compare with Previous | View Log

Line No. Rev Author Line
1 149 jeremybenn
// { dg-do assemble  }
2
// { dg-options "" }
3
// General test for operator overloading permissiveness.
4
 
5
typedef __SIZE_TYPE__ size_t;
6
 
7
struct A {
8
  int operator?:(int a, int b);    // { dg-warning "" }
9
  static int operator()(int a);    // { dg-error "" } must be nonstatic
10
  static int operator+(A,A);       // { dg-error "" } must be nonstatic
11
  int operator+(int a, int b = 1); // { dg-error "" } two errors on this line
12
  int operator++(char);            // { dg-error "" } must take 'int'
13
  void operator delete (void *);
14
  void operator delete (void *, unsigned long);
15
};
16
 
17
struct B {
18
  void * operator new (size_t, void *);
19
  int operator++(int = 0);
20
  int operator+ (int);
21
  void operator()();
22
  char * operator[](int);
23
  B * operator->();
24
};
25
 
26
int operator-(int a, int b);    // { dg-error "" } no class argument
27
 
28
void * operator new (A a);      // { dg-error "" } invalid first argument
29
void operator delete (A a);     // { dg-error "" } ditto
30
 
31
char * operator char * (int);   // { dg-error "" } return value, nonmember

powered by: WebSVN 2.1.0

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