Si te fijas en tu codigo en las lineas que no se ejecutan estas asignando un valor a una variable que luego no utilizas, asi que el compilador, que es muy listo, las ignora. Ahora bien fijate en el siguiete codigo y veras como ahora si se ejecuta.
Código Delphi
[-]
procedure TForm1.insertarOrdenado(Vector:TC;var Lista:TC);
var
Aux : TC; AuxAnt : TC; Pivote : integer;
begin
Pivote := Vector.Valor;
if (Lista = nil) then
begin
Lista := Vector;
end
else
begin
New(Aux);
New(AuxAnt);
Aux := Lista;
AuxAnt := nil;
if AuxAnt=nil then
ShowMessage('Si que me ejecuto, pero ejecutarse para nada es tonteria');
while ((Aux <> nil) and (Pivote < Aux.Valor)) do
begin
AuxAnt := Aux; Aux := Aux.Sgte;
end;
Vector.Sgte := Aux;
AuxAnt := Vector; end;
end;
Ahora como usamos el valor asignado ya no ignora la sentecia que asigna el valor.