Hi again, FPC has problems with examples attached with http://bugs.freepascal.org/view.php?id=25607 . The bug is caused by improper "calculation of distance" for methods with default parameter (methods with default parameter are ignored for few scenarios so compiler can't determine). During my detailed research I discovered that Delphi implementation has small bug (VMT is ignored for scenario E01 and E03 which is totally improper).
I have made patch for this bug attached to #25607 : http://bugs.freepascal.org/file_download.php?file_id=25047&type=bug FPC black list details: E01 source: https://gist.github.com/maciej-izak/f312ff683406e2b16003ee67ee1a95d1#file-e01-pas {E01 Delphi | FPC with calc_distance } TA.Create | TB.Create TB.Create | TB.Create TB.Create | TB.Create E02 source: https://gist.github.com/maciej-izak/f312ff683406e2b16003ee67ee1a95d1#file-e02-pas {E02 Delphi | FPC with calc_distance } TA.Create | TA.Create TA.Create | TA.Create TA.Create | TA.Create E03 source: https://gist.github.com/maciej-izak/f312ff683406e2b16003ee67ee1a95d1#file-e03-pas {E03 Delphi | FPC with calc_distance } TA.Foo | TB.Foo TB.Foo | TB.Foo TB.Foo | TB.Foo E04 source: https://gist.github.com/maciej-izak/f312ff683406e2b16003ee67ee1a95d1#file-e04-pas {E04 Delphi | FPC with calc_distance } TA.Foo | TA.Foo TA.Foo | TA.Foo TA.Foo | TA.Foo E05 source: https://gist.github.com/maciej-izak/f312ff683406e2b16003ee67ee1a95d1#file-e05-pas {E05 Delphi | FPC with calc_distance } TB.Foo | TB.Foo E06 source: https://gist.github.com/maciej-izak/f312ff683406e2b16003ee67ee1a95d1#file-e06-pas {E06 Delphi | FPC with calc_distance } TA.Foo | TA.Foo -- Best regards, Maciej Izak
_______________________________________________ fpc-devel maillist - fpc-devel@lists.freepascal.org http://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-devel