10 Ranges library [ranges]

10.5 Range primitives [range.primitives]

10.5.4 cdata [range.primitives.cdata]

The name cdata denotes a customization point object ([customization.point.object]). The expression ranges::cdata(E) for some subexpression E of type T is expression-equivalent to ranges::data(static_cast<const T&>(E)).

Use of ranges::cdata(E) with rvalue E is deprecated. [ Note: This deprecated usage exists so that ranges::cdata(E) has behavior consistent with ranges::data(E) when E is an rvalue.  — end note ]

Note: Whenever ranges::cdata(E) is a valid expression, it has pointer to object type.  — end note ]