Commit Graph

2046 Commits

Author SHA1 Message Date
michael
5f6f5cb864 * Bit helpers for ordinal functions, adapted from batch by Thaddy De Koning (bug ID 0036146)
git-svn-id: trunk@43417 -
2019-11-08 11:43:10 +00:00
michael
f622f58b04 * Observe doclear
git-svn-id: trunk@43416 -
2019-11-08 09:31:45 +00:00
michael
e578477334 * Refactor AddDelimitedText/SetDelimitedText
git-svn-id: trunk@43415 -
2019-11-08 09:21:08 +00:00
michael
d3ceede910 * Reduce use of Length(aValue) in setdelimitedtext
git-svn-id: trunk@43414 -
2019-11-08 08:36:31 +00:00
michael
3b867da924 * Add AddDelimitedText,AddCommatext by Werner Pamler (bug ID 36249)
git-svn-id: trunk@43405 -
2019-11-06 10:51:34 +00:00
michael
2557c8e99b * Fix bug ID #0036268, more descriptive comment
git-svn-id: trunk@43404 -
2019-11-06 10:42:11 +00:00
florian
b8f186dab2 * reverted r43366
git-svn-id: trunk@43382 -
2019-11-03 14:42:02 +00:00
florian
5ead23513d * more overloads for Math.Min/Max, resolves #36161
git-svn-id: trunk@43366 -
2019-11-02 16:21:43 +00:00
michael
faee789507 * Add some functional methods to TStrings
git-svn-id: trunk@43365 -
2019-11-02 15:08:27 +00:00
michael
20ca7d857c * Fix bug ID #36234: unicodedatastering must be of type unicodestring
git-svn-id: trunk@43357 -
2019-11-02 11:51:28 +00:00
michael
30bc217d55 * Fix bug ID #0036246, delphi compatibility property
git-svn-id: trunk@43353 -
2019-11-02 10:25:42 +00:00
michael
c6d8bd73f7 * Patch from Serge Anvarov with some optimizations (bug ID 36143)
git-svn-id: trunk@43155 -
2019-10-09 07:13:37 +00:00
michael
e89383a104 * Fix bug ID #36136, wrong reference count caused by missing const in param
git-svn-id: trunk@43138 -
2019-10-06 08:04:10 +00:00
svenbarth
f46b8539d0 * implement FileSymLinkGetTarget for *nix systems
git-svn-id: trunk@43113 -
2019-10-03 12:07:33 +00:00
svenbarth
b289805a91 * correctly copy Size and Attr values when converting from one T*SymLinkRec to the other
git-svn-id: trunk@43108 -
2019-10-03 12:07:13 +00:00
svenbarth
178146f06c - TRawByteSymLinkRec.Name is not required (and TUnicodeSymLinkRec doesn't have it either)
git-svn-id: trunk@43107 -
2019-10-03 12:07:09 +00:00
svenbarth
a00be912aa * fix regression introduced with r42240: packed sets for the Integer based variants of SetToString/StringToSet need to be shifted on Big Endian systems
git-svn-id: trunk@43048 -
2019-09-21 14:36:19 +00:00
marco
8dddf8a525 * patch from Ondrej, TVerticalAlignment & TTopBottom
git-svn-id: trunk@42813 -
2019-08-25 09:37:21 +00:00
svenbarth
7e1607e095 * correct alignment for the property table
git-svn-id: trunk@42808 -
2019-08-24 23:08:36 +00:00
svenbarth
2dc771b7ba * TClassData also needs alignment dummies
git-svn-id: trunk@42807 -
2019-08-24 23:08:33 +00:00
svenbarth
2002650a23 * small corrections (grammar, casing, typo) for the comment for TCallConv
git-svn-id: trunk@42802 -
2019-08-24 23:08:17 +00:00
michael
91ba1214d2 * Allow context when sorting lists (patch from Ondrej Pokorny, bug ID #0035962)
git-svn-id: trunk@42798 -
2019-08-24 10:46:51 +00:00
svenbarth
8e8ffa0511 * fix a rather annoying typo
git-svn-id: trunk@42772 -
2019-08-23 14:59:10 +00:00
svenbarth
707e05d131 * check for CPUM68k instead of M68K; the latter should only be defined when building the compiler, so I wonder how that ever worked...
git-svn-id: trunk@42765 -
2019-08-22 20:45:48 +00:00
svenbarth
3d585db43d * fix for Mantis #35906: use more accurate modified time from the FindData on Windows for the Timestamp
git-svn-id: trunk@42559 -
2019-08-02 13:16:17 +00:00
florian
1a67ffdd22 * fix alignment of ParamList
* fix test for architectures using aligned rtti

git-svn-id: trunk@42516 -
2019-07-28 12:43:15 +00:00
florian
23585ded15 * fix access to ParamFlags of the tkMethod branch of type data for CPUs requiring proper alignment
git-svn-id: trunk@42511 -
2019-07-28 11:55:19 +00:00
florian
73acb4d1c1 * fixes TInterfaceRawData to match TTypeData
git-svn-id: trunk@42486 -
2019-07-23 19:59:34 +00:00
nickysn
a3a39e1640 * i8086 compilation fix after changeset 42390
git-svn-id: trunk@42485 -
2019-07-23 11:57:20 +00:00
florian
217ae6e4bb * more fixes to rtti after attribute branch merging
git-svn-id: trunk@42476 -
2019-07-21 08:28:29 +00:00
svenbarth
176a63b67b * fix for Mantis #35862: free the list of functions added with AddTerminateProc to avoid memory leaks
+ added test

git-svn-id: trunk@42457 -
2019-07-19 15:55:21 +00:00
marco
6ca93e294f * SecsPerHour, delphi compatibility.
git-svn-id: trunk@42452 -
2019-07-17 21:15:17 +00:00
svenbarth
71fa4d1fe2 * the RTTI of an attribute not only consists of the creation function, but also of the attribute's type, a pointer to the constructor and a data blob containing the constant parameters
+ added test

git-svn-id: trunk@42390 -
2019-07-12 22:07:05 +00:00
svenbarth
8cd1f1973b - remove unneeded local variable
git-svn-id: trunk@42386 -
2019-07-12 22:06:48 +00:00
svenbarth
affa9f9d9c * to be on the safe side: don't include AttributeTable fields when cycling
git-svn-id: trunk@42385 -
2019-07-12 22:06:44 +00:00
svenbarth
3ad24c9db8 * as attributes can be part of any type they are best suited in a common part of TTypeData
git-svn-id: trunk@42375 -
2019-07-12 22:06:09 +00:00
svenbarth
de15025a47 * streamline retrieval of attributes (both in TypInfo and RTTI units)
git-svn-id: trunk@42373 -
2019-07-12 22:06:02 +00:00
svenbarth
e060a43d70 * rename TAttributeData to the more appropriate TAttributeTable
git-svn-id: trunk@42371 -
2019-07-12 22:05:55 +00:00
svenbarth
c17dafc2f9 * fix TClassData by including the AttributeTable at the right location
git-svn-id: trunk@42370 -
2019-07-12 22:05:51 +00:00
svenbarth
e296b26e9e - remove unit info and related code again as that will be handled similar, but differently with dynamic packages
git-svn-id: trunk@42369 -
2019-07-12 22:05:47 +00:00
svenbarth
ee940c8270 * always write a class' reference to the attribute table, even if the unit does not have attributes
git-svn-id: trunk@42368 -
2019-07-12 22:05:42 +00:00
svenbarth
788d976f3a * use a Word instead of a Byte for the attribute index (after all the compiler writes a Word to the count field)
git-svn-id: trunk@42367 -
2019-07-12 22:05:39 +00:00
svenbarth
5153a288dc * it's more correct for GetPropAttribute to return a TCustomAttribute instead of a TObject
git-svn-id: trunk@42366 -
2019-07-12 22:05:33 +00:00
svenbarth
d137e06ade * instead of embedding the attributes inside the class' and property's type data only store a reference to a table of attributes
git-svn-id: trunk@42365 -
2019-07-12 22:05:29 +00:00
svenbarth
84848df18d Reintegration of Custom Attributes branch by Joost van der Sluis with patches reworked by Svetozar Belic [patch 3/3]
Added FPC_REQUIRES_PROPER_ALIGNMENT to TUnitInfo definition. Added FPC_HAS_EXTENDED_RTTI define.

git-svn-id: trunk@42358 -
2019-07-12 22:04:56 +00:00
svenbarth
b2932393df Reintegration of Custom Attributes branch by Joost van der Sluis with patches reworked by Svetozar Belic [patch 1/3]
Implemented attributes for class types and properties (based on work by Joost van der Sluis). Added TCustomAttribute - a base class for attributes. Added TUnitInfo record to RTTI. It contains the unit name and unit options (for now only a flag which specifies if the unit contains attributes). Added several tests for attributes.

git-svn-id: trunk@42356 -
2019-07-12 22:04:48 +00:00
michael
a516b6fd74 * Fix bug ID #0035817
git-svn-id: trunk@42351 -
2019-07-11 20:33:39 +00:00
michael
561fa85104 * Fix comment for DateTimeToStr
git-svn-id: trunk@42315 -
2019-06-30 17:20:35 +00:00
michael
024714fa20 * Fix non-threading platforms
git-svn-id: trunk@42249 -
2019-06-19 08:10:26 +00:00
michael
ade808cb43 * Patch from Pascal Riekenberg to make component loading thread safe (bug ID 35638)
git-svn-id: trunk@42248 -
2019-06-19 06:25:02 +00:00