Salida extraña de std :: typeid :: name ()

solíatypeid para obtener los nombres de tipo de std :: vector :: size_type y una clase A de tamaño cero con el siguiente código (cppreference):

#include<iostream>
#include <vector>
#include <typeinfo>

using namespace std;

class A {};

int main()
{
    vector<int> v(10); 

    vector<int>::size_type s = v.size(); 

    A a; 

    cout << typeid(s).name() << endl;
    cout << typeid(a).name() << endl;

};

Y tengo esto como salida:

m
1A

Supongo que "1" antes de "A" es el resultado de la Optimización de clase base vacía, pero ¿qué significa "m" y esto es normal?

Estoy usando la siguiente versión de gcc: g ++ (Ubuntu 4.4.3-4ubuntu5.1) 4.4.3

Respuestas a la pregunta(1)

Su respuesta a la pregunta