25 lines · c
1typedef struct A B;2extern const int variable;3extern constexpr int function();4constexpr int test(bool b) { return b ? variable : function(); }5 6namespace N {7 typedef struct A B;8 extern const int variable;9 extern constexpr int function();10}11typedef N::B NB;12constexpr int N_test(bool b) { return b ? N::variable : N::function(); }13 14@import redecl_add_after_load_top;15typedef C::A CB;16constexpr int C_test(bool b) { return b ? C::variable : C::function(); }17 18struct D {19 struct A;20 static const int variable;21 static constexpr int function();22};23typedef D::A DB;24constexpr int D_test(bool b) { return b ? D::variable : D::function(); }25