No he leído todo el hilo con detalle pero el error que te indica
Obiwan no se debe al especificador
var.
Lo que pasa es que no es lo mismo arreglos dinámicos que parámetros abiertos.
Un arreglo dinámico se declara:
Código:
var
Lista: array of Double
Y el parámetro abierto se pasa a un procedimiento o función:
Código:
Function Pide_Poli( Lista: Array Of Double ): Double;
Se ven iguales pero no lo son. Busca en la ayuda de Delphi los tópicos "Dynamic arrays" y "Open array parameters" para que notes mejor la diferencia.
Puedes pasar un arreglo dinámico como parámetro a un procedimiento o función pero entonces no puedes pasarlo como lo harías con un parámetro abierto, es decir, como una lista entre corchetes, sino que primero llenas el arreglo y luego lo pasas a la función.
// Saludos