sergei
|
23cb216435
* RTTI fix for alignment-sensitive targets:
|
12 роки тому |
paul
|
b333ef582b
compiler: don't treat array[..] of dynamic array as a 2 dimension array
|
12 роки тому |
paul
|
980bc634b4
compiler:
|
12 роки тому |
paul
|
fceb6c3cc5
compiler: skip objc types in ProcVar rtti arguments and result type
|
12 роки тому |
paul
|
bc973e538d
compiler: write extended RTTI for tkProcVar (tkProcedure in Delphi)
|
12 роки тому |
paul
|
fe04dedbab
compiler: change RTTI size of record field offset from fixed 32bit to platform dependent integer (sizeint) since it is stored this way in the compiler. This is also Delphi compatible, rtl: adopt rtl appropriately
|
12 роки тому |
paul
|
5f709430d4
compiler: fix indentation
|
12 роки тому |
paul
|
dce960c97b
compiler: write Delphi compatible tkArray RTTI:
|
12 роки тому |
paul
|
39cee28f01
compiler: don't write reference to objc classes/protocols when writing tkClassRef rtti
|
12 роки тому |
paul
|
da35b3c601
compiler, rtl: write CodePage for AnsiString RTTI (Delphi compatible), change TTypeData appropriately + test
|
12 роки тому |
paul
|
714511a4d9
compiler: typo
|
12 роки тому |
paul
|
5cd3f9d8fb
compiler: don't write rtti for objc classes/protocols (a trial to fix build on mac)
|
12 роки тому |
paul
|
2cbc061707
compiler: write rtti for pointeddef before classrefdef and pointerdef rtti
|
12 роки тому |
paul
|
d18f273f67
compier, rtl: revert 24424 since it fails on some platforms
|
12 роки тому |
paul
|
e23534eec4
compiler, rtl: some rtti related changes:
|
12 роки тому |
paul
|
d90445e5ee
compiler, rtl, tests: write Delphi compatible (more or less) type information for Class Reference and Pointer types (mantis #0024367)
|
12 роки тому |
pierre
|
78d31eb3cd
Add missing of pi_needs_got found by sparc compiler compiled with -dCHECK_PIC
|
13 роки тому |
Jonas Maebe
|
4cae00f97a
* never use a linear table for enum<->string translation when two enums have
|
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/...
|
13 роки тому |
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)
|
14 роки тому |
sergei
|
2ff5f7a000
* For object fullrtti, add a parent 'field' regardless of whether its type needs inittable.
|
14 роки тому |