?? covariant1.c
字號:
// PR c++/5607// Currently we don't support covariant returns that would actually require// a pointer adjustment. We were failing to recognize this as such a case,// so were silently generating bad code. When we do support covariant// returns properly, the expected error should go away, and the testcase// should pass execution.// { NOT YET dg-do run }class A {public: virtual A* getThis() { return this; }};class B {int a;public: virtual B* getThis() { return this; }};class AB : public A, public B { // { dg-error "covariant" }public: virtual AB* getThis() { return this; }};int main (){ AB* ab = new AB(); A* a = ab; B* b = ab; if (a->getThis() != a || b->getThis() != b) return 1; return 0;}
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -