blob: 16c91cdef8ff5b9b93c12aec11d3d40c19dfdc75 [file] [log] [blame]
// { dg-do run }
// GROUPS passed operators
#include <stdio.h>
class shape {
public:
virtual int vDisplay(void) const = 0;
protected:
int X;
int Y;
};
class square :public shape {
public:
square(int x, int y, int width_) {
X = x;
Y = y;
width = width_;
}
int vDisplay(void) const {
printf ("PASS\n");
return 0;
}
protected:
int width;
};
class triangle :public shape {
public:
triangle(int x, int y, int width_, int height_) {
X = x;
Y = y;
width = width_;
height = height_;
}
int vDisplay(void) const {
printf ("FAIL\n");
return 1;
}
protected:
int width;
int height;
};
int main() {
shape* s1 = new square(4,4,5);
shape* s2 = new triangle(6,6,2,3);
*s1 = *s2;
return s1->vDisplay();
}