Description: sysutils, classes and other more hll RTL parts
This file as text.
(active) Revisions in this set:
34fecf90f34c9cc9f6fad91ba024ec9cda3a0a36,7169b6d04c04c30fd6a5259fea903566f7d7dab4,de6f3ea9b5d941931ba9f0140be5a97609a00504
c3fd06b6b5986d7a1db7971cd0633d8b2421615b,b446023e5b2655f9dad6a47462edc7062762f767,e6a593c5fae1bdf3ff77da7b50e1bfe272a33674
b878d461c8e7f1eaa4a928c285f0208ea8f5ad7a,fec8cb76297e8a30e5c705c54e13cd769745f40f,bce2f262341b9b7dddf6c550582a6aacd24d2de9
8f95c14827ec62cfe7435e485825dff98b72a8f4,8e730d20db57219db3aa63bb97301a0a1591d1f1,64c21bb88be2d7b5a7dec56aafe2a896fa1011db
2636966e2aaf9c8ee23b4c7b7c65dba0bcefc2a2,30b0d98636836e9d16557aa6879c81fa38ad7ed3,cab37732c4b064eb11d09b796002be3edb30b58b
4fecfe3df3d3eaea31e1c4da6eaeb5a84d07e0bc,012204422613f44a6908f22c96d18a23e906d8c4,30f5558bf2fdc410e73ebf597574e64cf114fa19
717d38f0601d506e41b82c222c429c6f98362c55,989895c82f1cf77d9549bedc5fdc8897758d044e,d5777174d8ec13dc54e09497a21a030debc5c088
13548088b7687916e1d12d213995fc2b639c3ff8,4336599c3a44f645bd83d7a7e51ef44825ce08bc,8b84926993ccae39c33f2993ec57bced6380b1e8
0d0e66f2f02632209a07f6a3807a47fc0caca95f,0c17b8e9c6c3c873c507fbb01bf86d938a0ceb6d,1ee1040bce44e46b9a47c564315cab362eb7d617
eb62a71a5fe3008b5ba53a5d6609f0f5354706af,7493e040157e43d966fbca300d441e9d6fe467e0,735fd20a6a48da586b49b43d1034f950b5ba49bf
0bad315dafc027649333ae3ed76fbee3c1426734,b95bfd07d9fff57970901c224d038e3266ddf49f,66891b1d59177b7b6f32f3e3544c3f952b1f35cf
d24eeffa2befa12115bbf24b0bc02a2adfec672a,1ab29086f87ba4a58a911025a5aa73c272d9c8aa,15ed1f131ea919d68368fd5a7fe5c9b22b4ed106
7f4420495b9a92d5ae8de25ce21e9eaf5368aace,757d2b4f91683bc9e7c8b84dd0aa67208790d465,a3beff94dcda2ca803abc655de46ff9ef35207ca
813105ea0acd7e33418ef88e25aa19b5701dfd70,ef5a32ab9531f0c6626fff54981a05d0cef3a0d0,fd39fd96b3261e6f1a3df4f8cbfbbea687b07ac8
148bde3f8f114951d0a19ba37c6c7e4d95a0ba62,2da416c4ea588b424a676365e4b7038ea93ee386,2854f08daa2c9b318e233085cd04a6e3c106d8fd
81e2db47a98ba14a2d01bd67dbb61e05c92610f9,122ef8bb76d11ab4e1c7cbe198e592a23bcdb22a,82bc91e6cf23c08ec356e57ed8f075f52e417134
d04547eb8309f2be7913d0b435208435ca871b11,ce1a82a1e4b72c032500ed709da6a216469b624e,9f62b33ef051476527175a2f102ca7c1a667e1c9
ea63bfb32f906cedf45d8ba1d44925b823cc726d,45021498cf92abc9487ca9cd04e4b916a015c0aa,7e4aca384ff3e7013155120899a3e0a118ab9c92
59883da0a081cd6f3c00da274338fc4f5b4ad7a7,d91847f39c8cbab32ddcf0d937b4d4ede668dc58,29f2f124961adfcbc10d99ef6eaa94bc6a2bb2b8
c2383fc2071d57319d5add9476eeb6aa063b2a74,e79f5ef577edf1aa8899b32130931a41bc0df969,c9b7a3b3b5dddec9aa02cfdcb8737afddf6248c5
1e1b273c67e1e508ffd3065bf6d0f5f0d5213568,6f25cccda9bb490f5edca535e104af1d85fb5cb0,bc714c0fd7d34e1d59b7a052c7e090702acbd9fc
48cb0eb5b1b8dce44306bcce541a6921c09558fe,ff9fe851fb11e76e35dfc22a72452c0e014d2221,f60bed08231f593c5ace4377be7bf86c41b20aa0
8cd3e72b3668e51e9e1357199f254a2c6aaf31b1,c2bca23fd1efa73fe7a16b969ee53f1b4d21b24f,10dd493057f2bd558b697bd88d5e5e9068eddd29
193f20b697ff022a0574b13efbcd01175332580e,680c096ac51cccaac72cccfc2b7b9e75b6771b46,326073512d9820751922b3efea9db6a2d2ed76bd
a575a5c0fdd7fd6f9e45eecd2d76c045cf588a4a,0533acdc27ea006838642e4377bc43ce2442e9fc,2f0cd77d862a9c6e48d68bb5c18660ed12d21800
a2deb9cbf119b89ef0a713519cef36882f3565ba,2ef822e8e8545cf5335254ad8f7bcf4ae05ac77e,208806f27f0bba55aea91961bbf1d1560cb48076
64c27a86a8544dd6e0eb8ef0353afb4180b48c28,0c83b3dc6cc74301efcbb6c83e28fd791fa6eb24,9dfbc38a501c9d4585303853b763f72eb9dbafc9
9fccadc1f0fc6f76d73a191ff2e932bb2d803d17,545db4a070c00a0a1e60d295c83a824e0c2bde1b,35a21de57cb403eb05e48fd6e65e77eb3019f405
cb237c9008979583822e67d2ff7ffaacb7b8cdfb,637513ce942c8b8fd1a9b2ac42f9fbcc1c848641,3c5b049f6b5137be2ce5823aa9ef8fdbba11d0e5
8df634e335a30566f9ba0f3ce91f46bcfedd6dc3,3c7d0cbe27aae00041c2ae53695165a828425e17,84f3c4908ac24847f0ac522f9eadeedb2c8ce944
f94f4e4ed92ae6f9014df8fd69c5667bcafb8ef1,4868b9d542aae9a279023cc2d3cb9488ae4ad841,cab717ae28d35ac0f8b9d818380f3a60cde6cefa
c38e0689f1cba9854bff4f126c5b416624871339
Clicking a revision will expand files
SysUtils: add ExpandFileName with a BasePath overload
* provided additional information in comments in the include file header
* rename generic TStringBuilder to TGenericStringBuilder to make code tools happy
* fix for Mantis
0038390: use Val instead of StrToInt to avoid overload problems
+ added test
* use Str instead of IntToStr to avoid overload problems with unsigned types
* Patch from Zeljko Avramovic to extend ordinal/float helpers
* fixed compilation for i8086 and 8-bit targets after
gitlab 0049622. The conditional
ifdef checks for the ordinal helpers rewritten to be less dependendant on
defines, such as CPU16/CPU32/CPU64 and instead use sizeof(integer),
sizeof(nativeint) and sizeof(nativeuint)
* TEncoding.GetEncoding - create unicode encodings, not only MBCS
* TEncoding.GetEncoding - create unicode encodings, not only MBCS
+ implemented SysUtils.FileGetDate for WASI
+ implemented FindFirst, FindNext and FindClose in SysUtils for the WASI platform
* fix bootstrapping wtih 3.2.2 and -Cpcoreavx2
* adjust ToInteger of the Boolean helpers so that it returns the value of either True or False, but not any other value (e.g. in the *Bool types). This is not only Delphi compatible, but also fixes the compilation problem of the one or other 32-bit platform (like PowerPC) after e65b822a.
* Change return type of some functions, so -1 can actually be returned, patch by Zeljko Avramovic (issue 39268).
* Avoid memory allocation in IsNullOrWhitespace. Fix issue
gitlab 0039702
* fix SysUtils.HashName as proposed by Awkward in
gitlab 0039827, resolves
gitlab 0039827
* adapted to syscodepages.inc for the fixed HashName
* patch by Rika: optimize TStringHelper.StartsWith / EndsWith, resolves
gitlab 0039706
* patch by Bart B: FormatFloat correctly outputs NaN now, resolves
gitlab 0032868
+ test
* Optimization of TStringHelper.Split by Rika. Fixes issue
gitlab 0039948
* Implement case-insensitive version of Equals & Contains. Fix issue
gitlab 0040029
* Refer to mainunit for lazarus IDE
* Refer to mainunit for lazarus IDE
* String helpers for all string types
* Explicit string types, duplicate where needed
Add Delphi-compatible TCurrencyHelper
* (Hopefully) fix compilation for non-win,non-unix platforms
Fix sysutils unit compilation failure for wasm32-wasi wince and possibly more targets
* patch by Rika: Implement TCurrencyHelper.Ceil/Floor, resolves
gitlab 0040134
* fix
gitlab 0040293: have the SysUtils unit use the TArray<> declaration in the ObjPas unit instead of declaring it again
* PAnsiChar version of Strdispose must be public
TMarshal & TMarshaller, strange things from Delphi.
* Move TMarshal to system unit
* Fix compilation for platforms that do not have unicodestring
Fix order of parameters of FillChar
* Some optimizations for FloatToStr (20% gain). Fixes issue
gitlab 0040137
* Add boolean %b format specifier
* Add some methods to TFormatSettings for Delphi compatibility
* Make sure it compiles with 3.2.2
* Make explicit how much better FPC is when compared to Delphi ;)
Replace TEncoding.FLock with interlocked operations.
Add potentially required barriers to TEnconding.
* Fix string type in AnsiLastChar declaration
* Add unicode AnsiLastChar overload
* Some delphi compatibility issues solved (PtrToNil and TGUID operator)
* Introduce fmShareNoLocking to disable locking of file descriptors on unix
* Use value for fmShareNoLocking which does not overlap with classes fmCreate
* Correct TCharArray declaration, disambiguate between widechar/char
* Select proper stringbuilder depending on size of char
* Added Delphi-compatible overload for ToString with UpdateCapacity argument
* force correct strpas overload when using unicodestrings
Let “Trim”s return string uncopied.
Without a copy in most cases
* Reflow code for clarity
Taking advantage of fpc_ansistr_concat_multi
* Delphi compatibility: ListIndexErrorMsg
const array - reducing unnecessary data copying
Move Int128Rec to System; remove i386 and x86_64 CPU unit dependency on SysUtils.
* Add RangeIndexError (delphi compatible)
* Allow %o, let %p handle object pointers and class pointers. Fixes issue
gitlab 0040762
* fix
gitlab 0040305: with type helpers now supporting inheriting from unique type aliases, declare a TRealHelper as a descendant of TDoubleHelper (cause Real is a Double)
+ added test
Make SysUtils' TSystemTime declaration on non-Windows platforms compatible with the Win32 and Delphi declarations
* Adding new generic Extract and Swap function to RTL
These allow to move data from one variable to another without triggering
the copy operation. Extract makes use of the newly introduced move
semantic for function results and Swap uses System.Move to not trigger
the copy mechanism.
* Add Delphi-Compatible new findCmdLineSwitch overload
Don’t use explicit Move in Extract and Swap.
* leave GetFileContents() early if the file size is 0 to avoid a range error if the RTL is compiled with range checks
* Extend GetLocalTimeOffset to return Dst or not
* Allow TFormatSettings.Create with string (using callback)
const for TFormatSettings
* use sametext instead of converting case
* In case of no DST, DST timezone offset must equal normal timezone offset
* Use last invalid type cast info in EInvalidCast exception
Add case-sensitive TStringHelper.Contains for Delphi compatibility
* Fix Contains signaturen remove double
* Need to put () when calling an overloaded function with same name. Fixes issue
gitlab 0041634