¿Puedo obtener nombres de tipo C ++ de una manera constexpr?

Me gustaría usar el nombre de un tipo en tiempo de compilación. Por ejemplo, supongamos que he escrito:

constexpr size_t my_strlen(const char* s)
{
        const char* cp = s;
        while(*cp != '\0') { cp++; };
        return cp - s;
}

y ahora quiero tener:

template <typename T>
constexpr auto type_name_length = my_strlen(typeid(T).name());

Pero Ay,typeid(T).name() es soloconst char*, no constexpr ... ¿hay alguna otra forma constexpr de obtener el nombre de un tipo?

Respuestas a la pregunta(1)

Su respuesta a la pregunta