t:=a^.hijo;
Aquí está la diferencia:
-Si A ya existía, entonces no se crea. Por ende, ahora T apuntará al mismo lugar al que apunta el hijo de A.
-Si A no existía, entonces lo creas. Pero los datos dentro de A no están inicializados, incluyendo los punteros que apuntan a los hijos, por ende, al hacer esa asignación, le estás pasando una dirección basura a T, y por ende, apunta a cualquier lado de la memoria.
Saludos.