提交历史

作者 SHA1 备注 提交日期
  joost 45338f7f75 * Renamed global symbol INITEXTRTTIUNITS to RTTIUNITLIST 12 年之前
  joost 2a74d8ad56 * Removed unused trttitypes extrtti and attribute 12 年之前
  joost ac984cc047 * Removed the uf_extrtti module flag. Having a flag that is always set if of no use. 12 年之前
  joost 3b0b9ee4d1 * Do not generate a list of all types anymore, but get a list of all types 12 年之前
  joost 6581f03117 * Placed the init-data in a separate assembly-list. This way it is possible 12 年之前
  joost c6707fecef * Added TUnitInfo.UnitOptions, to determine if there is attribute- 12 年之前
  joost 9cfb8e6d14 * The attribute-data is now stored inside the TTypeData structure instead of 12 年之前
  joost 402ef1bbe5 * Adapt margins of list of symbols within a unit, so that it works with 12 年之前
  joost b6f4afc064 * Store TExtRttiData for each type holding extended rtti data 13 年之前
  joost 6a45402a74 * Implemented class-attributes support. 13 年之前
  sergei a54e342060 + Reduce the amount of RTTI by not generating 'init' information if it will end up being the same as the 'full' one (which is the case of most simple types). The new behavior can be customized for every tdef by overriding needs_separate_initrtti method. 13 年之前
  Jonas Maebe 22dd93858d * don't try to write rtti for fields in Pascal records/classes/objects/... 14 年之前
  florian d35d1ed357 + initial support for pascal booleans with sizes 2, 4 and 8 14 年之前
  paul 937bf3cdaf compiler: write finished zero for enumeration rtti (this was broken since r14511 fixes bug #0019288) 14 年之前
  svenbarth 35b47e491c Rebase to revision 17306 14 年之前
  florian 3ce9ff93f1 + patch by Jeppe Johansen to support automatic interrupt table generation by using the interrupt directive with an offset. Not activated yet because it requires to change also the startup code of the different mcus. 14 年之前
  svenbarth b0b051ae83 Introduce a new type kind for helpers in the RTTI. This is Delphi incompatible, but it's cleaner than Delphi's "let's extend some magic class". This might not matter much though, because according to Google the RTTI for class helpers seems to be rarely used. 14 年之前
  svenbarth 96116a6c3a Several adjustments because virtual methods in helpers are just normal methods and a VMT isn't generated for them either. 14 年之前
  svenbarth 5218666328 * ncgrtti.pas: RTTI generation for helpers is handled like that for classes 14 年之前
  svenbarth 963a4d7b23 Commit of a completely restructured helper implementation. Instead of changing objectdefs with odt_classhelper to odt_class, they'll have the odt_helper type assigned to and this will be kept. This also implies that the parent of a helper is its true parent while the extended type is set to a field in tobjectdef (extendeddef). 14 年之前
  paul 89dc742de2 compiler: mark operator overloads as operators in rtti (although classes don't have operator overloads now) 15 年之前
  sergei 2ff5f7a000 * For object fullrtti, add a parent 'field' regardless of whether its type needs inittable. 15 年之前
  sergei 8cbef5627e Fixed rtti/finalization of objects that have ancestors and fields of managed types: 15 年之前
  sergei cd1f8e14f4 * TRTTIWriter improvements: 15 年之前
  sergei b50cf9a42a * TRTTIWriter.fields_write_rtti_data: refactoring. Since TAsmList allows random access, a separate loop iteration to count fields is redundant. Simply count the actually written fields, then insert result before field data. 15 年之前
  sergei b3aa9ac813 * Refactored TRTTIWriter by separating some commonly used code into procedures. Improves readability and reduces amount of typing; functionality stays unchanged. 15 年之前
  paul 56bf42de57 compiler: implement record methods and class methods: 15 年之前
  tom_at_work 19baf7d3e0 * changes to alignment for enumeration rtti record members: we need a Tconstptrint alignment before the MinValue/MaxValue members because the entire record needs that alignment due to some pointers inside 15 年之前
  tom_at_work f520989064 Fixed ordinal to string conversion for enumerations 15 年之前
  tom_at_work a380da6204 Fixed conversion from string to enum value for 64 bit platforms requiring proper alignment (e.g. ppc64/linux) 15 年之前