Tantas veces que he mirado el código y no ví que faltaba la asignación ¬¬' es como mirar con los ojos cerrados...
Gracias por el toque ^^
Respecto a la función de Ln, lo que necesito hacer dentro de mi función Ln(de un complejo) es llamar a Ln(de un extended) que reside en la unit típica de System, pero en su lugar se llama a si misma.
Según leí para que se distinga entre una función u otra con el mismo nombre deben de tener o distinta cantidad de parámetros o que estos sean de distinto tipo. Y las funciones son las siguientes:
Código Delphi
[-]
function Ln ( Number : Extended ) : Extended; Function Ln(a:TComplejo;b:byte=0):TComplejo; overload;
Con esto he pensado que quizá el problema radique en que ambas funciones deberían de llevar la directiva overload, aunque no sé si es posible modificar la primera.