Closed wg21bot closed 1 year ago
Related to and possibly opposing #431.
1: export static_assert(true); // mild preference for bad 2: export {static_assert(true);} // strong preference for OK 3: export template void f(); // strong preference for bad 4: template export void f(); // strong preference for bad 5: export {template void f();} // strong preference for OK
Forward P2615R0 (CWG 2443 resolution) to CWG for inclusion in C++23 (Options 2-5 as preferred above, Option 1 still prohibited). | SF | F | N | A | SA |
---|---|---|---|---|---|
10 | 9 | 4 | 2 | 0 |
Result: Consensus
Additionally permit Option 1 above as proposed in D2715R0. | SF | F | N | A | SA |
---|---|---|---|---|---|
2 | 6 | 13 | 1 | 0 |
Result: Consensus
Resolved by https://github.com/cplusplus/papers/issues/1236 and D2715R0
CWG 2022-11-11: Addressed by P2615R1.
Accepted with Modifications. See P2615R1 for details.
This paragraph forbids asm-declaration, static_assert-declaration, and a few other declarations not introducing names from being an exported declaration. This restriction can be a practical burden.
Allow these declarations to be exported declarations, with appropriate semantics. They should all be allowed as single exported declaration whether enclosed in braces or not.