| // { dg-do assemble } |
| // GROUPS passed ARM-compliance |
| // arm file |
| // From: belley@cae.ca (Benoit Belley 3218) |
| // Subject: Bad access control with private constructor and derivation |
| // Date: Fri, 28 May 1993 12:39:57 -0400 (EDT) |
| |
| #include <iostream> |
| |
| class X |
| { |
| public: |
| void f(); |
| |
| private: |
| X(); |
| }; |
| |
| class Y : public X |
| { |
| public: |
| Y(); |
| }; |
| |
| X::X() // { dg-error "is private" } |
| { |
| std::cout << "X::X()" << std::endl; |
| } |
| |
| void X::f() |
| { |
| std::cout << "X::f()" << std::endl; |
| } |
| |
| Y::Y() // { dg-error "within this context" } |
| { |
| std::cout << "Y::Y()" << std::endl; |
| } |
| |
| |
| int main() |
| { |
| Y y; |
| y.f(); |
| } |
| |
| |
| |
| |