blob: cad1a393eb75670e75c24713bd6f3892e7880104 [file] [log] [blame]
#include <stddef.h>
// Positive tests: these should generate a violation
class test_5;
extern void *operatornew(size_t);
extern void operatordelete(void *);
extern int operator+(test_5 a, test_5 b);
extern int operator-(test_5 a, test_5 b);
extern int operator*(test_5 a, test_5 b);
extern int operator/(test_5 a, test_5 b);
extern int operator%(test_5 a, test_5 b);
extern int operator^(test_5 a, test_5 b);
extern int operator&(test_5 a, test_5 b);
extern int operator|(test_5 a, test_5 b);
extern int operator&&(test_5 a, test_5 b);
extern int operator||(test_5 a, test_5 b);
extern int operator~(test_5 a);
extern int operator!(test_5 a);
extern int operator<(test_5 a, test_5 b);
extern int operator>(test_5 a, test_5 b);
extern int operator==(test_5 a, test_5 b);
extern int operator!=(test_5 a, test_5 b);
extern int operator<=(test_5 a, test_5 b);
extern int operator>=(test_5 a, test_5 b);
extern int operator+=(test_5 a, test_5 b);
extern int operator-=(test_5 a, test_5 b);
extern int operator*=(test_5 a, test_5 b);
extern int operator/=(test_5 a, test_5 b);
extern int operator%=(test_5 a, test_5 b);
extern int operator^=(test_5 a, test_5 b);
extern int operator&=(test_5 a, test_5 b);
extern int operator|=(test_5 a, test_5 b);
extern int operator<<(test_5 a, test_5 b);
extern int operator>>(test_5 a, test_5 b);
extern int operator>>=(test_5 a, test_5 b);
extern int operator<<=(test_5 a, test_5 b);
extern int operator++(test_5 a);
extern int operator--(test_5 a);
extern int operator,(test_5 a, test_5 b);
extern int operator->*(test_5 a, test_5 b);
class test_5
{
int operator=(test_5 a);
test_5 &operator->(void);
int operator()(int a);
int operator[](size_t a);
};
// Negative tests: these should not generate a violation
class test_6;
extern void *operator new(size_t);
extern void operator delete(void *);
extern void *operator new [](size_t);
extern void operator delete [](void *);
extern int operator +(test_6 a, test_6 b);
extern int operator -(test_6 a, test_6 b);
extern int operator *(test_6 a, test_6 b);
extern int operator /(test_6 a, test_6 b);
extern int operator %(test_6 a, test_6 b);
extern int operator ^(test_6 a, test_6 b);
extern int operator &(test_6 a, test_6 b);
extern int operator |(test_6 a, test_6 b);
extern int operator &&(test_6 a, test_6 b);
extern int operator ||(test_6 a, test_6 b);
extern int operator ~(test_6 a);
extern int operator !(test_6 a);
extern int operator <(test_6 a, test_6 b);
extern int operator >(test_6 a, test_6 b);
extern int operator ==(test_6 a, test_6 b);
extern int operator !=(test_6 a, test_6 b);
extern int operator <=(test_6 a, test_6 b);
extern int operator >=(test_6 a, test_6 b);
extern int operator +=(test_6 a, test_6 b);
extern int operator -=(test_6 a, test_6 b);
extern int operator *=(test_6 a, test_6 b);
extern int operator /=(test_6 a, test_6 b);
extern int operator %=(test_6 a, test_6 b);
extern int operator ^=(test_6 a, test_6 b);
extern int operator &=(test_6 a, test_6 b);
extern int operator |=(test_6 a, test_6 b);
extern int operator <<(test_6 a, test_6 b);
extern int operator >>(test_6 a, test_6 b);
extern int operator >>=(test_6 a, test_6 b);
extern int operator <<=(test_6 a, test_6 b);
extern int operator ++(test_6 a);
extern int operator --(test_6 a);
extern int operator ,(test_6 a, test_6 b);
extern int operator ->*(test_6 a, test_6 b);
class test_6
{
int operator =(test_6 a);
test_6 &operator ->(void);
int operator ()(int a);
int operator [](size_t a);
};