paul
|
5cd3f9d8fb
compiler: don't write rtti for objc classes/protocols (a trial to fix build on mac)
|
12 năm trước cách đây |
paul
|
2cbc061707
compiler: write rtti for pointeddef before classrefdef and pointerdef rtti
|
12 năm trước cách đây |
paul
|
d18f273f67
compier, rtl: revert 24424 since it fails on some platforms
|
12 năm trước cách đây |
paul
|
e23534eec4
compiler, rtl: some rtti related changes:
|
12 năm trước cách đây |
paul
|
d90445e5ee
compiler, rtl, tests: write Delphi compatible (more or less) type information for Class Reference and Pointer types (mantis #0024367)
|
12 năm trước cách đây |
pierre
|
78d31eb3cd
Add missing of pi_needs_got found by sparc compiler compiled with -dCHECK_PIC
|
13 năm trước cách đây |
Jonas Maebe
|
4cae00f97a
* never use a linear table for enum<->string translation when two enums have
|
13 năm trước cách đây |
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 năm trước cách đây |
Jonas Maebe
|
22dd93858d
* don't try to write rtti for fields in Pascal records/classes/objects/...
|
13 năm trước cách đây |
florian
|
d35d1ed357
+ initial support for pascal booleans with sizes 2, 4 and 8
|
14 năm trước cách đây |
paul
|
937bf3cdaf
compiler: write finished zero for enumeration rtti (this was broken since r14511 fixes bug #0019288)
|
14 năm trước cách đây |
svenbarth
|
35b47e491c
Rebase to revision 17306
|
14 năm trước cách đây |
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 năm trước cách đây |
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 năm trước cách đây |
svenbarth
|
96116a6c3a
Several adjustments because virtual methods in helpers are just normal methods and a VMT isn't generated for them either.
|
14 năm trước cách đây |
svenbarth
|
5218666328
* ncgrtti.pas: RTTI generation for helpers is handled like that for classes
|
14 năm trước cách đây |
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 năm trước cách đây |
paul
|
89dc742de2
compiler: mark operator overloads as operators in rtti (although classes don't have operator overloads now)
|
14 năm trước cách đây |
sergei
|
2ff5f7a000
* For object fullrtti, add a parent 'field' regardless of whether its type needs inittable.
|
14 năm trước cách đây |
sergei
|
8cbef5627e
Fixed rtti/finalization of objects that have ancestors and fields of managed types:
|
14 năm trước cách đây |
sergei
|
cd1f8e14f4
* TRTTIWriter improvements:
|
14 năm trước cách đây |
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.
|
14 năm trước cách đây |
sergei
|
b3aa9ac813
* Refactored TRTTIWriter by separating some commonly used code into procedures. Improves readability and reduces amount of typing; functionality stays unchanged.
|
14 năm trước cách đây |
paul
|
56bf42de57
compiler: implement record methods and class methods:
|
14 năm trước cách đây |
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 năm trước cách đây |
tom_at_work
|
f520989064
Fixed ordinal to string conversion for enumerations
|
15 năm trước cách đây |
tom_at_work
|
a380da6204
Fixed conversion from string to enum value for 64 bit platforms requiring proper alignment (e.g. ppc64/linux)
|
15 năm trước cách đây |
joost
|
07bf44517c
* Merged XPCom branch into trunk, added support for constref and changed
|
15 năm trước cách đây |
mazen
|
b127fc154a
* Fixed spell error revealed by lintian.
|
15 năm trước cách đây |
Jonas Maebe
|
13399280dc
* don't write rtti for static fields so we don't try to initialise/finalise
|
15 năm trước cách đây |