On 2017-11-03 23:52, Graeme Geldenhuys wrote:
Attached is a sample application reproducing the problem. Compile the
program with FPC 2.6.4 and everything works. Compile it with FPC 3.x and
no interface reference is ever returned.
Yet more testing..... Now I've managed to get it to work in all FPC
versions. Yeah!!!
If I change my class that does interface delegation to the following syntax:
TClassA = class(TObject, ICmdLine)
private
FCmdLineParams: TCmdLineImpl;
function GetCmdLineParamsInterface: TCmdLineImpl;
property ChildDelegate: TCmdLineImpl read GetCmdLineParamsInterface
implements ICmdLine;
public
destructor Destroy; override;
end;
Then it works. Note I changed the function and property definitions.
Still strange that FPC 2.6.4 worked in my prior example and FPC 3.x not.
I also didn't see any "User Changes" on the wiki about this changed
behaviour of Interface Delegation.
Regards,
Graeme
--
fpGUI Toolkit - a cross-platform GUI toolkit using Free Pascal
http://fpgui.sourceforge.net/
My public PGP key: http://tinyurl.com/graeme-pgp
_______________________________________________
fpc-pascal maillist - fpc-pascal@lists.freepascal.org
http://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-pascal