18.05.13, 9:41, Anthony Walter wrote:

I just filed a bug having to do with a managed type (I am using an
interface in my code) not being properly initialized when stored in a
record's private section:

http://bugs.freepascal.org/view.php?id=24447

I tested the given example and I can't see any error. Although I tested on win32 platform.

Please compile RTL with debug information and try to debug fpc_Initialize routine from rtti.inc.

During the testing of your example I see that it executes on each enter to Test1 and Test2:

1. It steps into tkRecord case of fpc_initialize and then enters to recordrtti 2. In recordrtti Count = 1 (1 managed field), so it executes the for-loop body 1 time. 3. In for loop it enters rttiproc = fpc_initialize with Offset = 0 and TypeInfo of tkInterface.
4. In fpc_initialize it assignes nil to Data (interface field).

If in your case you see something else please reply to this mail or to the bug tracker.

Best regards,
Paul Ishenin
_______________________________________________
fpc-pascal maillist  -  fpc-pascal@lists.freepascal.org
http://lists.freepascal.org/mailman/listinfo/fpc-pascal

Reply via email to