summaryrefslogtreecommitdiff
path: root/gcc/testsuite/g++.dg/cpp0x/inh-ctor3.C
blob: 8cbeed6604792e5176f745f39db83d488c2add27 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
// { dg-do compile { target c++11 } }
// { dg-options -fno-new-inheriting-ctors }

struct B1 {
  B1(int);
};
struct B2 {
  B2(int);
};
struct D1 : B1, B2 {
  using B1::B1;			// { dg-error "inherited" }
  using B2::B2;			// { dg-error "inherited" }
};			   // ill-formed: attempts to declare D1(int) twice
struct D2 : B1, B2 {
  using B1::B1;
  using B2::B2;
  D2(int);    // OK: user declaration supersedes both implicit declarations
};