Description: rtl/objpas minus sysutils and classes
This file as text.
(active) Revisions in this set:
5153a288dc63937a3b79d305f72cab94e5ab99e3,788d976f3a2d89bbf59721280c4d6dc193f6624b,c17dafc2f932c23033c990232e776f374b19cc81
affa9f9d9ca31c0e28cb61b084617ae4b3d6875c,8cd1f1973bfcf432f87e5df74beb23cd45b03c93,a3a39e164040751afc38637a02a5624063048be0
73acb4d1c134f218af71d06adbf3a980202647d0,1a67ffdd22de1d5e5ebe07a328db8806d9831ebb,707e05d131eae05c11007aa6cd58a64baf73e938
2dc771b7baba950cc451ff4c1c4cdae9c770cd23,7e1607e095b2c271a636993186e26a5d32fbf06f,5ead23513d29a185a71dfa0fc3f5314e4fc7aad5
b8f186dab2e09afc589407a2f1a0dd2db2cb2d89,8d95da3feafcffcd7b2bf539bfdf4b90a09c2963,9a01bcf3dc185dac2d310d178b62d5e48e608529
706e72e1fd681d688ba504b2e7ce1f78694ad686,2932787dee07a24703a24e165ee44973f6839ac1,7b6f273023059d3a905fd35897f2db9eb5bf46d0
c4069b5fe8d22d55bc667804aa0301fd00a308ef,15b7a8763f6b16dece5336603049024158cb3b49,27ed2808dcb4c95b101cada579f32ea3325e08d3
551f26767048e2cb9e1f895122cd8dac95b2dca6,306559667c7c569f3da35d2d3d2d692b53a5c3fd,cc66eb27ab549216e2b1e99026f0beb31e5d0102
9e14dee1c35bd3131a99de5fcd613afeee9757f7,3963a30f9e434871c515109f24632751a710ae51,f8f824aa8d30279cc6d8130a3ba2380582f8a4ff
06b0927f1e4e763d62fb1a34da215cf1f03a399c,c92056fcac53d1e0fcac9d6de4cab18c53b33b41,725da25477e1284c44a0fecb9ee709da592ee895
d1f999100b449adf175104b355b9e52ae2441fb4,48b97514193933e20c354a459c1cb37ca8edeb6c,2767a9c979eb181ffdfcb27569b92875c43ea643
54338a12b32d8d2ed1cb1ccacb2be1b00971d175,efb204d5e7f3676be2345272876dc1f83a95b137,6f4ade6abef6ee2d35c4209a4501a88cd5b30e7b
d948420ebacf9ba73d37fac2dc0eab0b2af16962,cf41a549b93d72cd414f19526abeab7e23b4dd8a,60c80a45a0fad2e6316b6e04340951f00fe07d1a
cfbdf90ab02f618d6c23980b74ed3bea1ee70284,a260f1987c8a302522e006d822ae96b644831191,96eb5da93988646fca88865a682c5f6e644327c8
9889a810628091c1b7a542e832e1238efdcb9f2d,7edf9b388456751fa36bd696e3c20b62b06bd643,b83d4fae29cac83c79eb311a8f821dc298db67e8
b878a0d39057fcdcf4d8dc64eb04ca133eb99b54,d40a2dbb1271ca1964fdfd8b34efb55c580724b9,1cdbefe8516ad1275bb3b243e486564b8d321d22
5a712a0cdec794bd70b0e2862b595b728dd385c9,5a0ace6d45c27f1629943b89e971d76dc08d9e38,a224f8ded7c0bc2b0e17c2536d56bb0fda1c5149
4d66ac911835cbeb60af330b6a36c5280cf343a7,70282826ade9305b7aa0046efb0dea3b84089ace,90f902c7d4a6d95e40eedeb813cab74fe3e4e73d
ceddc2aec32441f2b62ad23625d78efd0472952a,6a07a508b877e09e9e99a8c7b2ff0e9b1e5e7428,a748d7279c85b9bccc82d5ef55dd8812f22bb9d7
4794e5ffcfc58d982825d18e54ac1e6d95cb2ae4,44cf5d776f92fc30a581e6bbf8571b07eccf02aa,33950a5e220ec7bf024e4b3f14beaee4b4ef0bbd
df67c18f7dcecde5df374f958915198bc2307183,be0e06bd505738535a51f22c96f7f235ba977af4,05348107034f51b869079ec1b82913fe9b561ff8
972b961f2b3a2a61a87cbbffda80b70a9b82d86d,7eea850726ab34bbc2a164dedc7d185f18f05f10,c74441323ac9712f0a1f08349debcffe580734d1
21ffa221e697c791912949b130191838def3e81d,cde58d66fc1df01c4f61bee5dab1ca082778a698,3a1f180a56338505e6387a8cfd3dd56b2655134a
f6ce76b638a08a19d58f35a0aeaeab0a6462e24a,b7e8dd62682379c4c24b9d4731fca095aee40cd3,ad93958e5bcf3dc799f9b324e859e93fa958d69f
852cd355e4c735a7f9f24a9513cb6448b1c325e3,9a344568df3991f403b67f41ad3a8483afa0fa82,b61a0fab97a47f5281778c6a8322f0eeb2747418
bd2b0c8dca2897736d1c265bc53d2f5ed5e5ba3a,8527cb17f829b85a1ea2ec4a0c09bfdf35140f23,06601d5e6015fcde5118be97457897d7941aabc0
8665e038863650a6fd90ac1160d7ca1fa5011bbe,a0cae50af6831b5be48866bce27fffa3d1c4196f,d6cf3c98d0e317aeecb5885ad59ea4b06e431a6e
f67165ae31509fa20275b3d3763874ad03b1234d,816e3fc5385ceee26a8fc1df9789f5d2d39be68b,617d56f23af75d9060a7ad70d95b812b334f99c2
0b4d9a673293fd940fb90dd672014839542c72d5,68acd786405462b0f27d38cb7a125f9d5c4afb2f,d8278b1699b7e4726a8c71a762417fed48aae7b6
1850eab89ad33a4291f4e431776c38ccd3aa64c7,d4a2f67a6d619fcdb8130a618e86885aadc66725,81ffe0ed36003e5f7d0de9e7a0619bd1481efc98
a8675300565e967d717be4fde6b0207ffdf1f5b3,28fc3da2bda2cb959f61ce3405dddb246fa00e0d,1a32b53f2c98b680f35a05633e64064a12a74849
cbbba251989de12376a7f1af5b79427575042c54,e2d58b8b944227a6b1911c62bb59cbc686da0ac2,9a7a8f0d5c184e9909b95cccf53f9883137e7a97
b590ad70d810e29146a2e70b406b2ac7addd8808,258c96c69982c687dbd9a8d912c0a87cc7acd1ca,a8fbddd7fa3a7eec7f01356ab004b0b8558b6a63
f7aa2f60dce649ccd37a638858d19c278ebf8391,8d6b823d4e1d335308bcdac2e4618e3de5501c23,c18c56024d13ad2436699eac907618acefa35da8
53762fe897cf30a2b517a4be42e16d3bed459006,a9e735f2575d13fe42c43ccd0c94596baef0d547,a8953e08326b9521f5521c71cab2c2daff53a28f
74028317a78d5bbec0936e64f5dcaae1197e323c,5eaa53faa18b6d7fbdfe4900966824abc61eca88,c177cf7da27bc8ce44246876029d24aade4738ea
477da86f77577a1fe85db303fa64eaa9df8af681,dd35057d80a6e3d0e736062bf2b5a98c34345cb8,7b088f9484df06d283eb1ef1334815a970781d91
Clicking a revision will expand files
* it's more correct for GetPropAttribute to return a TCustomAttribute instead of a TObject
* use a Word instead of a Byte for the attribute index (after all the compiler writes a Word to the count field)
* fix TClassData by including the AttributeTable at the right location
* to be on the safe side: don't include AttributeTable fields when cycling
- remove unneeded local variable
* i8086 compilation fix after changeset 42390
* fixes TInterfaceRawData to match TTypeData
* fix alignment of ParamList
* fix test for architectures using aligned rtti
* check for CPUM68k instead of M68K; the latter should only be defined when building the compiler, so I wonder how that ever worked...
* TClassData also needs alignment dummies
* correct alignment for the property table
* more overloads for Math.Min/Max, resolves
0036161
* Windows: Reworked handling of command line arguments to properly support Unicode:
- Use the CommandLineToArgvW API function to parse the Unicode command line (we can use it since Win9x is not supported anymore).
- Implemented non-public functions ParamStrA and ParamStrU which are exposed in the objpas and uuchar units to provide correct AnsiString and UnicodeString versions of ParamStr().
- The cleanup code is moved from InternalExit to the finalization section of the System unit.
* Changed Integer to Longint in definitions of RTTI structures. It fixes typinfo for 16-bit CPUs.
* better error message for runtime errors 202 and 210, resolves
0038254
* use SizeInt for counters in math unit, all non-32 bit targets should benefit from this
* Remove spurious var, prevents fpdoc from handling record
* Remove spurious var, prevents fpdoc from handling record
* avoid range check error and overflow in objpas.hash, should resolve
gitlab 0039561
Unicode 14, Unicode Collation Algorithm 14, CLDR 40 support.
Unicode source code's size reduction: short field names, delete unicodenumtable.pas.
* patch by Rika for ArcTan2 to reduce code size
* patch by Rika: More numerical stability for Math, resolves
gitlab 0039863
* avoid unneeded widening of expressions due to constants defaulting to extended
* patch by Rika to improve FrExp and LdExp
* patches by Rika: Fix a bug in LdExp(extended), and test Math.Frexp/Ldexp implementations instead of own, resolves
gitlab 0040030
Add SetToArray and ArrayToSet functions for more general RTTI Set handling
+ (modified) patch by Bart B to add Cycles conversion functions, part of
gitlab 0040055
* patch by Bart B to complete missing functions in the math unit, resolves
gitlab 0040055
* patch by Bart B: Implement sinh(), cosh() and tanh() for single, double and extended parameters, resolves
gitlab 0040083
* CompareStrAnsiStringProc is not necessarily assigned
* fix typo in resource string
+ add generic utility function ConstParamIsRef<> to determine whether a specific type is passed by-value or by-reference as a const parameter
Make sure RTL str consts have consistent ending. Fixes issue
gitlab 0040272
* replace Length(
) - 1 with High() which leads to slightly shorter/better code (reported by lagprogramming on the forum)
* Extended RTTI Type info routines and data structures
* Add PProcedureSignature
* Parent class for hidden TVirtualInterface thunking class
* Invoke helper definition, allow calling it
* TArray is now in system unit
* Simplify GetEnumNameCount (by Lagprogramming). Fixes issue
gitlab 0040411
* improve math.power as suggested by Paolo Valle, resolves
gitlab 0040461
* Add some constants for Delphi compatibility
* Some delphi compatibility constants
* Delphi compatibility methods, unicode character type helper
* Additional Delphi-compatible constant
* Add delphi compatible constant
* TVmtFieldEntry.FieldOffset needs to be SizeUInt instead of PtrUInt, so that it works correctly on the various memory models of i8086 as well
+ added test
+ add descriptive comment regarding the TVmtField* types
* fix
gitlab 0040595: correctly access the list of parameters of the extended method table
+ added test
* Make GetEnumName safer, check actual type. Allow passing an integer
* Add delphi-compatible TPointF.EqualsTo overload
* Fix in overloads of GetFieldList
* Add optional parameter to get methods of only current class
* Add delphi-compatible constant (including the typo in the name ;))
* Use correct error number for missing widestring manager
* RectWidth was not public
* CurveKappa, CurveKappaInv
* Fix use of wrong memory size when getting extended property info
* Fix overflow in initialization of return value
* Fix TExtendedVmtFieldEntry.GetTail
* Add parameter to skip inherited fields
* Add constants cPI and friends, for delphi compatibility
* empty Rect does not extend the rect in UnionRect, based on patch provided by Werner Pamler, resolves
gitlab 0040680
* Some routines for list index error, delphi-compatible
Move EqualsValue/LessThanValue/GreaterThanValue to unit Types, refer to them in the Math unit
* Add SMEnuSeparator for Delphi compatibility
* make typing more consitent; cosmetics
* ensure that the final assignment in the hyperbolic functions raises an exception if they overflow
+ check argument range for cosh/sinh
* improved cosh/sinh argument checking
* another fix of cosh/sinh overflow checking
* Patch from Eric Grange to fix TRectF.FitInto
* Add GetTypeName, GetPropName
* Patch from Eric Grange to correct TRectF.FitInto
* add TScoped for auto-destroying classes, based on an idea of Loïc Touraine
* Capitalize TScoped.Assign
* Make tscoped.assign the less expensive operation
* Better Min/MaxExtended values. Patch by Rika. Fixes issue
gitlab 0040026
* add redundant trect.normalize as per delphi docs, copied from normalizerect
GetInt64Prop: return unsigned value for ULong
* refactor nested ifdefs by using if/elseif chain. No functional changes.
* Allow to retrieve info about last invalid type cast
* first approach on better exception handling on hyperbolic harmonic functions, might need more fine-grained checking for good performance
* attempt to fix overflow handling in hyperbolic harmonic functions better, still not there I think
* also avoid overflow in tanh()
* avoid overflow for tanh() as well, was an oversight
Add TSizeF.Zero for Delphi compatibility
* Fix logic error, resulting in overwriting previous buffer content
* Free Translated resource strings, patch by Christoph. Fixes issue
gitlab 0041372