static_assert(__is_trivially_assignable(A, const A&), "");
static_assert(__is_trivially_assignable(B, const B&), "");
}
-
-namespace dr2061 { // dr2061: yes
- namespace A {
- inline namespace b {
- namespace C {
- // 'f' is the example from the DR. 'S' is an example where if we didn't
- // properly handle the two being the same, we would get an incomplete
- // type error during attempted instantiation.
- template<typename T> void f();
- template<typename T> struct S;
- }
- }
- }
-
- namespace A {
- namespace C {
- template<> void f<int>() { }
- template<> struct S<int> { };
- }
- }
-
- void use() {
- A::C::f<int>();
- A::C::S<int> s;
- }
-}
<td><a href="https://wg21.link/cwg2061">2061</a></td>
<td>CD4</td>
<td>Inline namespace after simplifications</td>
- <td class="full" align="center">Yes</td>
+ <td class="none" align="center">Unknown</td>
</tr>
<tr id="2062">
<td><a href="https://wg21.link/cwg2062">2062</a></td>