Skip to content

Latest commit

 

History

History
28 lines (20 loc) · 2.3 KB

standards_effort.md

File metadata and controls

28 lines (20 loc) · 2.3 KB

Standards efforts

A variant type is on planned for inclusion in the C++ Standard, probably in C++17. Current working papers are (list extracted from 2015 working group papers):

  • 2015-09-28: Variant design review. P0086R0
  • 2015-09-28: Variant: a type-safe union without undefined behavior (v2) P0087R0
  • 2015-09-27: Variant: a type-safe union that is rarely invalid (v5) P0088R0
  • 2015-09-24: Simply a Strong Variant P0093R0
  • 2015-09-24: Simply a Basic Variant P0094R0
  • 2015-09-24: The Case for a Language Based Variant P0096R0
  • 2015-09-25: Implementing the strong guarantee for variant<> assignment P0110R0
  • 2015-09-24: Homogeneous interface for variant, any and optional (Revision 1) P0032R1

Last state can be seen from The Variant Saga: A happy ending?.

The optional type is also on the way into the standard. The papers are:

  • 2013-10-03: A proposal to add a utility class to represent optional objects (Revision 5) N3793
  • 2014-01-18: Working Draft, Technical Specification on C++ Extensions for Library Fundamentals N3848

Older Papers

  • Older working drafts are: N4218 (rev 1), N4516 (rev 2), N4450 (rev 3), and N4542 (rev 4). They have been split into P0086 (general design discussions) and P0087 and P0088 (containing two competing? specs).
  • 2015-07-28: Variant: Discriminated Union with Value Semantics P0080R0 An alternative proposal to N4542.