N4149: Categorically qualified classes -- David Krauss

A new WG21 paper is available. If you are not a committee member, please use the comments section below or the std-proposals forum for public discussion.

Document number: N4149

Date: 2014-09-25

Categorically qualified classes

by David Krauss


Some classes only work in certain contexts: scope guards are usually useless as subexpressions, and expression template placeholders malfunction as local variables. An unused function result may signal that the caller intends to follow a different protocol, such as with std::async. This proposal extends class definitions to prevent such errors, and adds a mechanism to automatically resolve them by type substitution, such as a value type for an expression template. Additionally, generation of non-movable objects becomes more tractable.

The added functionality includes that of the “auto evaluation” proposals [1]. This proposal intends to be more expressive, more broadly applicable, and easier to adopt and use.

Add a Comment

Comments are closed.

Comments (0)

There are currently no comments on this entry.