Parece ser que en versiones anteriores a D2009 hay problemas cuando intentas sobrecargar métodos (como 11565, 47461, 56503). Por ejemplo, yo tengo el siguiente código
type TForm1 = class(TForm) Button1: TButton; procedure Button1Click(Sender: TObject); private public procedure lolo(a: TColor); overload; procedure lolo(a: Integer); overload; end; var Form1: TForm1; implementation {$R *.dfm} { TForm1 } procedure TForm1.lolo(a: TColor); begin // lo que sea end; procedure TForm1.lolo(a: Integer); begin // lo que sea end; procedure TForm1.Button1Click(Sender: TObject); var l: TColor; begin lolo(l); end;
Código sencillo donde los haya. Pues bien, este trocito de código compila sin problemas en versiones mayores a D2007 (no tengo el D2009 para probarlo) pero no D2007 o inferiores dando un error de "Ambiguous overloaded call to'lolo'"
La cosa es que necesito tener "esas" funciones en los componentes GMLib y los intento compilar desde la versión 6 de Delphi. La pregunta es... ¿qué solución lo más elegante posible se os ocurre para salvar ese problema?
Yo había pensado en ponerle un parámetro más a una de las funciones, parámetro que no usaría, claro, no lo necesito, pero me parece una chapucilla

¿Alguna otra solución?
Gracias