Viewing file: using29.C (1.12 KB) -rw-r--r-- Select action/file-type: (+) | (+) | (+) | Code (+) | Session (+) | (+) | SDB (+) | (+) | (+) | (+) | (+) | (+) |
// { dg-do compile }
struct A { int i; };
struct B { int i; };
struct C : A, B { using A::i; // { dg-message "previous" } using B::i; // { dg-error "redeclaration" } };
struct E { typedef int type; };
struct F { typedef int type; };
struct G : E, F { using E::type; // { dg-message "previous" } using F::type; // { dg-error "redeclaration" } };
struct H { typedef int type; };
struct I : H { typedef int type; // { dg-message "previous" } using H::type; // { dg-error "conflicts" } };
struct I2 : H { using H::type; // { dg-message "previous" } typedef int type; // { dg-error "conflicts" } };
struct J { struct type {}; };
struct K : J { struct type {}; // { dg-message "previous" } using J::type; // { dg-error "conflicts" } };
struct L : J { using J::type; // { dg-message "previous" } struct type {}; // { dg-error "conflicts" } };
struct M { typedef int type; struct type2 {}; };
struct N : M { using M::type; // { dg-message "previous" } using M::type; // { dg-error "redeclaration" } using M::type2; // { dg-message "previous" } using M::type2; // { dg-error "redeclaration" } };
|