Rika Ichinose
|
0a53f40f07
Faster managed record initialization.
|
8 місяців тому |
Rika Ichinose
|
73d2ffcf42
Publish AddRefArray.
|
8 місяців тому |
Rika Ichinose
|
91d3746adf
Use FillChar in InitializeArray.
|
1 рік тому |
Sven/Sarah Barth
|
ecbd0fc0da
* move aliases of fpc_copy and fpc_copy_by_move_semantics to aliases and adjust their names to match other aliaes
|
10 місяців тому |
Rika Ichinose
|
798d793cdc
Specialized fpc_copy_with_move_semantics for destructive copies.
|
11 місяців тому |
Frederic Kehrein
|
ca92c49f8c
* Avoid calling copy operator when moving data from temporary objects
|
11 місяців тому |
Rika Ichinose
|
b8fdd7148b
Simplify RTTIRecordOp.
|
1 рік тому |
Rika Ichinose
|
cd2c8a6539
Faster RTTIManagementAndSize -_-.
|
1 рік тому |
Rika Ichinose
|
6de766e40a
Redesign RTTISizeAndOp to return more useful information.
|
1 рік тому |
Rika Ichinose
|
d7352e7b66
Remove most of the VER3_0 conditionals.
|
1 рік тому |
Michael VAN CANNEYT
|
d2d3fe6bc3
* Char -> AnsiChar
|
2 роки тому |
Károly Balogh
|
45b5e9215c
rtl: remove defines for v2.x compiler from the common part of the RTL. It's no longer suppported to build with that
|
4 роки тому |
svenbarth
|
97c8464b11
* fix for Mantis #36738: when copying a record using its copy operator we assume that we've copied the whole record; this way managed records inside non-managed records are handled correctly
|
5 роки тому |
florian
|
931d4dcfee
* ensure the rtl and the packages for embedded compile with features exceptions and classes disabled
|
5 роки тому |
svenbarth
|
00a418f589
* also correctly align the pointer for the record elements inside FPC_COPY
|
6 роки тому |
svenbarth
|
0c46460548
* m68k has slightly different alignment requirements, so that aligntoptr might result in incorrect addresses for a record's element entries, thus we introduce a separate AlignTypeData function that handles this correctly
|
6 роки тому |
pierre
|
d6d3e171ce
Try to fix alignment issues in RTTI code for 64-bit targets which require proper alignment
|
6 роки тому |
florian
|
a60ab40237
* handle records with managed fields correctly after attribute merge fixes
|
6 роки тому |
florian
|
217ae6e4bb
* more fixes to rtti after attribute branch merging
|
6 роки тому |
svenbarth
|
a076677336
* instead of a flags field generate a table with all Initialize operators of all fields (nested or not, parent class or not) for class types; objects and records don't use this (yet)
|
7 роки тому |
svenbarth
|
8536abce8a
* as the management operator feature is not platform specific using a specific define for it aside from a
|
7 роки тому |
svenbarth
|
4d0ab82ef7
* optimize class initialization by calling RTTIRecord() only when required for a non-trivial initialization
|
7 роки тому |
svenbarth
|
393d1c2256
* move RTTI related types from rtti.inc to rttidecl.inc
|
7 роки тому |
svenbarth
|
bbf578b193
* move definition of USE_PACKED from rtti.inc to rttidecl.inc
|
7 роки тому |
svenbarth
|
8b5461367b
* move TTypeKind from TypInfo unit to System unit as it's necessary for the future GetTypeKind() intrinsic
|
8 роки тому |
maciej-izak
|
4154b4ca8a
* Call management operators also for records with zero-size. For that purpose was changed function RTTISize. New name for RTTISize is RTTISizeAndOp. RTTISizeAndOp can return size of required type and information about existing management operators for that type in current context (to determine context is used enum TRTTIRecOpType which is passed also as parameter in RTTISizeAndOp). RTTISizeAndOp is used in fpc_initialize_array, fpc_finalize_array, fpc_addref_array and CopyArray.
|
8 роки тому |
maciej-izak
|
9a9eb1b840
* Use RTTIRecordRttiInfoToInitInfo (when FPC_HAS_MANAGEMENT_OPERATORS is not defined) for records/objects in fpc_Copy as well as for fpc_Initialize, fpc_finalize, fpc_Addref
|
8 роки тому |
maciej-izak
|
8a68a7aea8
* Declare field RecordOp for TRecordInfoInit only when FPC_HAS_MANAGEMENT_OPERATORS is defined, same for additional types for management operators.
|
8 роки тому |
maciej-izak
|
d42428bc3c
* Initial support for management operators in RTL (rtl/inc/rtti.inc):
|
8 роки тому |
maciej-izak
|
af8e0efe57
* Rtti info about Management Operators (MO) in init table for records. Note: commit contains minimal changes for RTL (for proper "make") no functional changes. More RTL changes for fully functionally MO in next commits.
|
8 роки тому |