Hello,
I'm having issues with cursors of doubly linked lists (erroneous
memory access exceptions).
So I'm wondering whether the pragmas might solve the problems.
What is the purpose of the pragmas defined in the package like
pragma Preelaborate(Doubly_Linked_Lists);
pragma Preelaborable_Initialization(List);
pragma Preelaborable_Initialization(Cursor);
If you would like help on the memory access exceptions, do describe the problem more in detail here, and perhaps someone can help.
Thanks for your reply. All the cursors in my scenario are still valid. As far as I understood from John Barnes book Ada 2005, a cursor identifies the container and the item. In my case both the items and the containers still exist. So I assumed thatcollecting cursors in a list should work.
I believe the GNAT run time is still built without checks on. So it is quite possible that you have kept around cursors whichThanks for your reply. All the cursors in my scenario are still valid. As far as I understood from John Barnes book Ada 2005, a cursor identifies the container and the item. In my case both the items and the containers still exist. So I assumed that
are no longer valid (those cursors are direct access types in practice), and GNAT has no way to test that.
Sysop: | Keyop |
---|---|
Location: | Huddersfield, West Yorkshire, UK |
Users: | 379 |
Nodes: | 16 (2 / 14) |
Uptime: | 44:30:55 |
Calls: | 8,141 |
Calls today: | 4 |
Files: | 13,085 |
Messages: | 5,858,054 |