@FredOverflow mentioned in the C++ chatroom that this
is a rare case of rvalues that have names. The C++0x FDIS mentions under 5.1.1 [expr.prim.general] p4
:
Otherwise, if a member-declarator declares a non-static data member (9.2) of a class X, the expression
this
is a prvalue of type “pointer to X” within the optional brace-or-equal-initializer. It shall not appear elsewhere in the member-declarator. (emphasis mine)
What others are there, if any?