What is a “top-level” cv-qualifier?
Section [dcl.type.cv]
Dawn Perchik

Created on 2006-11-05.00:00:00 last changed 49 months ago


Date: 2014-11-15.00:00:00

[Moved to DR at the November, 2014 meeting.]

Date: 2014-02-15.00:00:00

Proposed resolution (February, 2014):

Change 6.8.4 [basic.type.qualifier] paragraph 5 as follows, splitting it into two paragraphs:

In this International Standard, the notation cv (or cv1, cv2, etc.), used in the description of types, represents an arbitrary set of cv-qualifiers, i.e., one of {const}, {volatile}, {const, volatile}, or the empty set. For a type cv T, the top-level cv-qualifiers of that type are those denoted by cv. [Example: The type corresponding to the type-idconst int&” has no top-level cv-qualifiers. The type corresponding to the type-idvolatile int * const” has the top-level cv-qualifier const. For a class type C, the type corresponding to the type-idvoid (C::* volatile)(int) const” has the top-level cv-qualifier volatile. —end example]

Cv-qualifiers applied to an array type attach...

Date: 2006-11-05.00:00:00

The phrase “top-level cv-qualifier” is used numerous times in the Standard, but it is not defined. The phrase could be misunderstood to indicate that the const in something like const T& is at the “top level,” because where it appears is the highest level at which it is permitted: T& const is ill-formed.

Date User Action Args
2017-02-06 00:00:00adminsetstatus: drwp -> cd4
2015-05-25 00:00:00adminsetstatus: dr -> drwp
2015-04-13 00:00:00adminsetmessages: + msg5360
2014-11-24 00:00:00adminsetstatus: ready -> dr
2014-03-03 00:00:00adminsetmessages: + msg4821
2014-03-03 00:00:00adminsetstatus: open -> ready
2006-11-05 00:00:00admincreate