ahhhh, perdona entonces, como ya viste tenia prisa
* Missing operator or semicolon Traducido resulta : Falta operador o el caracter punto y coma ";". Normalmente el error es porque falta el punto y coma en la linea anterior a donde indica el fallo. Tambien por que falte un operador entre una o varias expresiones, vamos que falta:
'and' 'or' '<' '<=' '>' '>=' . Aunque confieso que en el 99% de los casos es el punto y coma que siempre me lo como con patatas.
** da el siguiente error: Incompatible types: 'String' and 'procedure, untyped pointer or untyped parameter' que traducido resulta: Tipos incompatibles: Tira de caracteres y procedimiento, puntero a tipo de datos no definido, o parametro de tipo desconocido.
Éste fallo normalmente es porque ha encontrado un
end que no se corresponde con ningun
begin de los
if, while, for ... y entonces lo interpreta como que el procedimiento ha acabado.
procedure Mio ;
begin
if 3>2 then
showmessage('si');
end;
<<<< Aqui interpreta que el procedimiento Mio ha acabado
showmessage('pos yo que se.....');
al leer esta linea, no sabe a que procedimiento o funcion pertenece ese código
end;
Tambien suele dar ese mismo error cuando a una funcion le pasas un valor que no se corresponde con el que espera:
procedure Mio ( x:integer):Boolean;
y la llamas de la forma :
Mio ( '3' );
Como ya supones, ahora te dirá:
Incompatible types: 'String' and 'Integer'
Saludos