You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
|
|
|
/*
|
|
|
|
* Copyright (c) Facebook, Inc. and its affiliates.
|
|
|
|
*
|
|
|
|
* This source code is licensed under the MIT license found in the
|
|
|
|
* LICENSE file in the root directory of this source tree.
|
|
|
|
*/
|
|
|
|
|
|
|
|
#pragma clang diagnostic ignored "-Winaccessible-base"
|
|
|
|
|
|
|
|
struct T {
|
|
|
|
T(){};
|
|
|
|
~T(){};
|
|
|
|
};
|
|
|
|
|
|
|
|
struct A : virtual T {
|
|
|
|
A(){};
|
|
|
|
~A(){};
|
|
|
|
};
|
|
|
|
|
|
|
|
struct B : virtual A {
|
|
|
|
B(){};
|
|
|
|
~B(){};
|
|
|
|
};
|
|
|
|
|
|
|
|
struct C {
|
|
|
|
C(){};
|
|
|
|
~C(){};
|
|
|
|
};
|
|
|
|
|
|
|
|
struct D : A, C {
|
|
|
|
B b;
|
|
|
|
D(){};
|
|
|
|
~D() { A a; };
|
|
|
|
};
|
|
|
|
|
|
|
|
struct E : B, C, D {
|
|
|
|
E(){};
|
|
|
|
~E(){};
|
|
|
|
};
|
|
|
|
|
|
|
|
struct F : B, virtual C, D {
|
|
|
|
F(){};
|
|
|
|
~F(){};
|
|
|
|
};
|
|
|
|
|
|
|
|
int main() { struct F f; }
|