Buenas Joaquin, la condicion que tenes que usar va a depender del ejercicio a resolver, como regla general igualmente antes de evaluar aux^.sig deberias primero haber chequeado que aux <> NIL, porque si no es el caso el programa da error.
En el caso del ejemplo que mostras no estarias cumpliendo con la condicion que te comentaba, antes de evaluar aux^.sig deberias chequear que aux <> NIL, ya que si es NIL da error. Esto va a depender tambien de las precondiciones del ejercicio, por ejemplo si te dicen que la lista tiene al menos un elemento, sabes que de entrada podrias evaluar aux^.sig, en otro caso siempre deberias chequear que si lst<>NIL.
Espero haya aclarado tu duda, si queda alguna igualmente no dudes en volver a preguntar!
Saludos,
Guillermo