¿Cuál es el tipo de nullptr?

La Norma establece quenullptr es un puntero literal de tipostd::nullptr_t (2.14.7). Y 18.2p9 definenullptr_t por

namespace std {
  typedef decltype(nullptr) nullptr_t;
}

Por 7.1.6.2p4decltype(nullptr) es el tipo de expresiónnullptr, que es por definiciónstd::nullptr_t (desde la expresiónnullptr es un prvalue). Sustituyendo eso en la definición denullptr_t resultados en

typedef nullptr_t nullptr_t

Por otro lado, un especificador typedef no introduce un nuevo tipo, es solo un nombre para otro tipo existente. Entonces, ¿qué es exactamentenullptr_t? No soy capaz de comprender estas definiciones.

Respuestas a la pregunta(2)

Su respuesta a la pregunta