|
@@ -0,0 +1,40 @@
|
|
|
|
+{ Source provided for Free Pascal Bug Report 3786 }
|
|
|
|
+{ Submitted by "drf" on 2005-03-14 }
|
|
|
|
+{ e-mail: [email protected] }
|
|
|
|
+
|
|
|
|
+{$mode delphi}
|
|
|
|
+
|
|
|
|
+type
|
|
|
|
+ funky_class=class;
|
|
|
|
+ base_class=class
|
|
|
|
+ procedure proc(f:funky_class);virtual;
|
|
|
|
+ end;
|
|
|
|
+ subclass2=class(base_class)
|
|
|
|
+ procedure proc(f:funky_class);override;
|
|
|
|
+ end;
|
|
|
|
+ subclass3=class(base_class)
|
|
|
|
+ procedure proc(f:funky_class);override;
|
|
|
|
+ end;
|
|
|
|
+ funky_class=class
|
|
|
|
+ procedure proc(p:base_class);overload;virtual;
|
|
|
|
+ procedure proc(p:subclass2);overload;virtual;
|
|
|
|
+ procedure proc(p:subclass3);overload;virtual;
|
|
|
|
+ end;
|
|
|
|
+ funky_subclass=class(funky_class)
|
|
|
|
+ procedure proc(p:subclass3);override;
|
|
|
|
+ procedure proc(p:subclass2); override;
|
|
|
|
+ end;
|
|
|
|
+
|
|
|
|
+procedure base_class.proc(f:funky_class); begin end;
|
|
|
|
+procedure subclass2.proc(f:funky_class); begin end;
|
|
|
|
+procedure subclass3.proc(f:funky_class); begin end;
|
|
|
|
+
|
|
|
|
+procedure funky_class.proc(p:base_class); begin end;
|
|
|
|
+procedure funky_class.proc(p:subclass2); begin end;
|
|
|
|
+procedure funky_class.proc(p:subclass3); begin end;
|
|
|
|
+
|
|
|
|
+procedure funky_subclass.proc(p:subclass2); begin end;
|
|
|
|
+procedure funky_subclass.proc(p:subclass3); begin end;
|
|
|
|
+
|
|
|
|
+begin
|
|
|
|
+end.
|