Created on 2022-11-28.00:00:00 last changed 3 weeks ago
CWG 2023-01-06
There is implementation divergence in handling this example.
Proposed resolution:
Change the example in 9.9 [namespace.udecl] paragraph 10 as follows:
using B::x; using A::x; // OK, hides struct B::x using A::x; // OK, does not conflict with previous using A::x x = 99; // assigns to A::x struct x x1; // x1 has class type B::x } struct C { int i; static int j; }; struct D1 : C { }; struct D2 : C { }; struct D3 : virtual D1, virtual D2 { using D1::i; // OK using D2::i; // OK using D1::j; // OK using D2::j; // OK using D1::i; // error: conflicts using D2::i; // error: conflicts using D1::j; // error: conflicts using D2::j; // error: conflicts };
Issue 36 was resolved by P1787R6, but no example was added.
History | |||
---|---|---|---|
Date | User | Action | Args |
2023-01-07 14:23:21 | admin | set | messages: + msg7119 |
2023-01-07 14:23:21 | admin | set | status: open -> review |
2022-12-04 20:52:04 | admin | set | messages: + msg7089 |
2022-11-28 00:00:00 | admin | create |