The sources of the Free Pascal compiler, RTL, packages and utilities. See https://www.freepascal.org/ for more info.
Go to file
sergei 8cbef5627e Fixed rtti/finalization of objects that have ancestors and fields of managed types:
* Link rtti to ancestor by writing rtti of ancestor as a field of type tkObject and offset zero. This is a cheat from formal point of view (as it replaces inheritance with aggregation), but is fine for the intended purpose of representing memory layout. Now RTL can handle entire instance of descendant object, and such objects can be statically allocated without leaks.
* Bypass finalization in inherited object destructors, as the instance is now entirely finalized in outermost destructor.
+ test

git-svn-id: trunk@16632 -
2010-12-24 14:46:29 +00:00
compiler Fixed rtti/finalization of objects that have ancestors and fields of managed types: 2010-12-24 14:46:29 +00:00
ide * cleaning out use of old endianess routines (these are centralized in system since 2.0.x days) 2010-12-23 20:38:56 +00:00
installer + i386/iphonesim target for the new iPhoneSimulator in Xcode 3.2.4 and 2010-09-29 21:56:47 +00:00
packages * fix | separator char. Bug 6262D 2010-12-21 19:30:12 +00:00
rtl + most of OS/2 threading support implemented; not debugged yet though 2010-12-19 22:05:05 +00:00
tests Fixed rtti/finalization of objects that have ancestors and fields of managed types: 2010-12-24 14:46:29 +00:00
utils * Support for multiple directories. 2010-12-19 20:40:37 +00:00
.gitattributes Fixed rtti/finalization of objects that have ancestors and fields of managed types: 2010-12-24 14:46:29 +00:00
.gitignore - obsolete, removed (handled by regular script) 2010-12-10 10:13:55 +00:00
Makefile * compile win 64-bit IDE default. It works now, and even gdb is starting to work. 2010-12-15 19:16:48 +00:00
Makefile.fpc * compile win 64-bit IDE default. It works now, and even gdb is starting to work. 2010-12-15 19:16:48 +00:00