Despues de hacer varias pruebas y eliminar ciertos erores que no sabia a que santo venian....
Yo tenia razon. Juas he encontrado un bug en delphi
una cosita un tanto rara.... es que la funcion CompareNames, no puede ser un método de una clase. La puse solita en una unidad aparte, y así si me permitía compilar. Funciona de lujo.
PD: De nada Majo