Description: rtl-objpas

This file as text.
(active) Revisions in this set:
75fe6c23a5242eddfd19537e00200bf425cfdcbc,2840e5e1fda6a4d222057f583c6a65cb08a0074d,c38b8ac28fd17072e2db87f4d008c36e68e8e0a7
eed9bc1f356acc9da3471b862ae0b35e8fca0908,e65b822a0c2a0d0dbe11ae3766dc9876accdbf28,e95572921a85a84f64ce4864544d549ad0ef5b50
ac95c20c5a0fa5387aa87a963ef224fb86bcffe7,8c5bc91855dcdb1812d0d8ad851e1eef92047187,acaa4660fb7162c7e76d09c93e759cf384492bdb
7cde8df8c78c3e7f7af2758c53e57e2867680baa,6ffa3d4a89adc384b4bcc4459c63b30d1c0d830b,74fdf0692caf78d795585b06078f93310d7ae0cf
6084bb6d09aab6c4f337f0df1ae121f0c7149c7e,42b10196f16592cfabc4284ada2e8c3e78b44015,0bad315dafc027649333ae3ed76fbee3c1426734
4b5ffd1b2363b8853525a11d20d4ada6c8c5bc12,a7578e144d4dbb18405e80f55822e140fc049be8,ef5a32ab9531f0c6626fff54981a05d0cef3a0d0
56a906a4219bc5533335bf84c3df56250de1de37,9b783281753a1b7b76feb9b9fad04975bc7ac109,15e7dd3d9f5d94136f00c29235f9ffbcb8a5650c
5307ef07c43b0c3005f7d2a2da89b58cd2690993,f671db3fa691b70f720b266dc25c6bef77e1288c,557a324473694e56ffd934e2f9342ce64cd9b50d
74c995c06b7759bf741954b2e51ece96b9847f75,938207045477ae42af68ac7cf0b30d67de7dffb4,1ce1fcf5aeff6fe3ade196c3e4d1b1d58f80f5fd
b0fd2615194fa74e8b4de328974c9834e6ca06a4,dba81381756d73ff6bc9493bf5e6b15197d0118b,50344403834db619bdbf15f42ef88bce903d0692
2cec31d86f232e5c47fbe20dfd115d8caf2e5ba5,121f6fce223c975f5ec2d48cad8e40ae9c47cc1f,b6ccf369b97093839cdefcda2be4e46a65b27bc4
3a5db26abf2ab5fbae9577928a42d78d122e0ae7,2b0d98bf2ceb00ebe2b479f91a33bed106513791,cc81e183226bb1d36dd19b7755c51e2633be8f09
ca8d867d570f0a292fb8cb92e397926e34c9fac7,71a46465c8105ac3fa5f492d17ae73ac486b7060,476780df7710331877ee1c77af234dc75d13e8ba
9c5bfbeb780c296556b6317bdc517079c42e390a,09b0ca01ccf02d311c1a2223ac8c1c80ea16e78d,3f7cd9b8076ef8bb0f9fb3a1892d2beb944ccbdb
ba6696d9eda7872b99b9a3b3060545aa7e31051c,7589bb39b86dcb8ff1bd7a3bb4d836659062bf60,074cb3bcf4dd05140984e8f0ff1b42a2caed1ca3
54bb95da81571e745d02770318ceba5fecf4e0d2,d1432b73029b43b6f1a4746782e76c04ea75ac4a,c2176d27eaaeb68e6dc8c2a6a06cb76df6d91876
492717a25c7f4dd0a1f4f7dc98fb2697a38e6b2f,85494cdb1d831c5b0a3053bc4f9268d10ade1295,2463faf5c0b3a23d04d188e3f925960d1534d46b
9fe350bd91c0293c794a5c46e3211d29fb0e2727,ef6612170cbdd9794c3dee1bc5b10c22af57b7ff,92479574779ec3820fce0a6067a7a2bb17493d45
bc2d1cf51c4222b7cb18c93e990436df877a56b1,083e85854444fda9a392a67536d25701081f481e,78c8ca57adc378a75621a9ea921917ab57eae898
e75d97815d19b2540a5311eb0ac8f734765abfee,e67cccee374935361230e26d45ce42a01a5bfb8d,52d3a0d5e3befa86118c9dd762381cb2d20fcdea
6e03b24701771b77c804e1ca774d61d05ac8136c,91756b9e3e658799db1f34de15bfc0bd6267af3a,e7184f3126fe185c4b96edc5d8506fc08e2a97c1
666de1e77c5b8ae629c7e0ee5f9afac036b3e18e,f7214e6ae8314d5dc35caff50dd7e27f99a27cc2,9f5a4205049c74cd503a2e921309acb80c6e5dc7
05a6a498c0ee55b5b1462d5d9d9ca036dc67505d,fafb2934260208b23ba6f7d0e3d21a68dab2c138,7f94fb2a65a1b9b68fa1be9ce53b2e28098ac270
d851553f417233bb8cca6a0ec54f4be864d14056,40c3dc5809eb9842bf7a283ec5655b60d0f0c557,8eb0d1eaed1b9322706cbb199c093005b1839d43
713c9eea6a8e91d8dbb8a408575f740bbc79f2c3,ab115180bf06334c3b895be4df0e00ff74a186fc,14d65ced2eaa7747628d7f281f36ad2af56057b2
fac7c21b9b95ef254c27c365ddb218817da8c777,342d3338e50110e9f77574571e5fdac29330046b,93937f99ae6cc39b0e11d625aa9a1da05a5c6d67
3e098316fde811eaec9c9812f42a2dfd7f0015b0,92f937c40eb8ebad413e8819de0474306755a1a5,b5a0c3b1b6be6538d7111f2863e4575cd32da662
d3b14eb1ba8dc3b5f2ca1dd47db1faf79cffd2c3,149db318a0c4a4acff4fe5a23d43dd66e7704017,23dd7a51731239e06e2e1bdbc966d240dc4d21fc
6ff63107a68f173d9c03e99c41ab9c40738b2ff0,742158b678ba56230806c0c590c02602e528893c,d79c12ad5b7efafa4c8e8d7d3007d30b5794ca5a
b74411cf03d616201c8bd7a7370df77918d80735,f7bcabd9568c9c27b86b7e77fe6d01c1fc6f7d0e,2469fe8d700ebbfffa9d26b76f7c3607e9f2b15a
f70a430b6f170703190d7d53da1706b607eaf1b0,d9ec917586b3d945bd4d79a857b165c3bb0aab81,d96448cfafabdc0116dbd1f7e7c983b2c48b5a3c
2d0f8467fa235f102b3b7c2b39e5e00a243ab8cd,0b0193106fdde9c4cb466beb8af8136ed4fcbf41,1230e5a623c5c8e31a2c4f0e09f9f1e3fa89e28f
03f98e749cebb73d0bb431a430c6280ea25a9888,26b6d0223e08565cf3080313a5828462604660f2,8ffbbe6a93786927117165a122720e792cea961c
1b8209fee4c887946c9c8c49db9a52c4a3302519,a8ccf71bd0ac5b1c231bfa3d65d900c2cc1f7053,1c816990c33b47ee7b6ea90a2909407295d40b11
59457228111983bfb67ccd8cfbd5953034107499,69140d22eb808fed7f93970102904da246991518,98a7fe6204d5d2a966ae5497b9ebf76325b82b06
5a6b4ed8e4200680ca5ce39d4fd67e0570cd2f8b,6c1c3e35ee99b3646a349e58243530625cd21d74,072cb55315f8c79baf9561cb6218f6fbb77e5057
fd10c8826473e4cf3f333d09dd39e0b218919778,cc6aabaf8b68bb0454c4c960d81ccf85d0e5bc95,4a596a2de30c4b63c7cb535ddb367d9d84bc2964
0acff7a7c15779641a79847fa0a204146e243824,8a92f5f01e6a0b31962e5e584b247c42ea9b309a,2deb5e655740b037102c4ce76c1c0799efb57190
a1892091ed23cc85175403ddf8ef2e5e7ae8bc3a,76e2ee99701b89837445a5b636d4507eb435f567,cb072b6b8c4a228000f98307e63bb7744bf7287e
dfd8f5c62b03b013a348f00dde06dd9f7a0ee0be,b447ab211f4af8a5868970fb4ce4143d7cbe9931,4afc656ac59f5c5f7a37fdefb51ccb93ad7c0173
2070a452178eeeba70327863539c0c1e98394b18,e552165b7a737e8a2860df87da2f53c1dae69395,1f19edef004bad0ea37aa0f7dfdef2139de19ab4
8834c109fa68e83bb3929bea9361f766ab3e1414,774e96f8a9ff472cc47bd1a6f2c25beda6665413,a6e7e3e74345e9d508d57eaf592885763bd57d2c
72459026608d111de2682076c3d2464d5df104f1,4aed151833107e24c5256561422011dc5c786ed0,faf085662d8c8250a63530ac784a8d59886e4461
2e8b9e7e01ffbf180e5c0ac2a2a29d0e06b822a7,12db8a59b526a292182da0b43adb15e9e30b6c7c,6972d16c3ab08068898d123f5b677c6e56d96d1a
814370b894f989fa5c83ac4684e6e0f5465e6227,10e6a54b59b5d62dfe232c84a1b0159c6c73239c,b3d555c2584b513c07ec64abed99423fc5e4d41e
e062a5471663d71d47b16008021fd206877c9f7e,11076f084c5f4c2c536b07761c93b37c362cac83,a0a453f8903b9e9a261b5e6b74ae0b560301b4e4
7210366766d36d906073b8bf16d8ace84e7d4cf0,57a53d6532686a3e80ac1bcb62a10cf76c8fb8c4,b648c6e23716ebdae25e9f59e0cb2a844f44d507
bfa16c0b32b99bcf17abf8d67bc07919615838ec,f2d88692863dfe9896e5fd901a2cc5e58c12cb85,1208f4d5b9a5157cf205c71d9244fb9bf41ad15d
f23dbc2ecb1674a701d034aeecc8bb74ac0698b0,134e9645144fb7dab91d988763cf0eef02c42b12,c7275d0bde42998815200f5fbf78e1281f203c7d
083a05904325b4d1aad1905a5fb60fee6ffed742

Clicking a revision will expand files
 


* FreeRTOS: adapated packages to build
Commit consists out of
  • M packages/libgd/fpmake.pp
  • M packages/rtl-extra/fpmake.pp
  • M packages/rtl-objpas/fpmake.pp
  • M packages/rtl-unicode/fpmake.pp
  • M packages/sdl/fpmake.pp


* fix for Mantis 0036895: the new epoll_pwait was missing the size parameter for the sigmask parameter
Commit consists out of
  • M rtl/linux/linux.pp


sinclairql: enable most of rtl-objpas and rtl-extra on the QL
Commit consists out of
  • M packages/rtl-extra/fpmake.pp
  • M packages/rtl-objpas/fpmake.pp


+ enabled several rtl-objpas units for the WASI target
Commit consists out of
  • M packages/rtl-objpas/fpmake.pp


+ add type helpers for the remaining Boolean types (QWordBool and Boolean{8,16,32,64})
Commit consists out of
  • M packages/rtl-objpas/src/inc/syshelpers.pp
  • M rtl/objpas/sysutils/syshelp.inc
  • M rtl/objpas/sysutils/syshelph.inc


* i386 callback implementation: only skip the result argument if it was detected as one from the parameters
Commit consists out of
  • M packages/rtl-objpas/src/i386/invoke.inc


* Add examples for syshelpers from Zeljko Avramovic. Fix issue gitlab 0039541
Commit consists out of
  • A packages/rtl-objpas/examples/syshelpersdemo.lpi
  • A packages/rtl-objpas/examples/syshelpersdemo.pas


+ tests for convutils unit by Bart B, resolves gitlab 0039793
Commit consists out of
  • M tests/Makefile
  • M tests/Makefile.fpc


Improve NaturalCompareText behaviour as a comparer.

This version probably can’t return garbage or intransitive results.
Commit consists out of
  • M packages/rtl-objpas/src/inc/strutils.pp


Add loongarch64 packages support
Commit consists out of
  • M packages/fcl-res/src/elfconsts.pp
  • M packages/fcl-res/src/elfreader.pp
  • M packages/fcl-res/src/elfsubwriter.inc
  • M packages/fcl-res/src/elfwriter.pp
  • M packages/fpmkunit/src/fpmkunit.pp
  • M packages/gtk2/src/glib/glib2.pas
  • M packages/ide/fpmake.pp
  • M packages/libffi/src/ffi.pp
  • M packages/rtl-extra/src/linux/unixsock.inc
  • M packages/rtl-extra/src/unix/ipc.pp
  • M packages/rtl-generics/src/generics.hashes.pas
  • M packages/rtl-objpas/src/inc/rtti.pp
  • M utils/fpcres/fpcres.pas
  • M utils/fpcres/target.pas


* Char -> AnsiChar
Commit consists out of
  • M rtl/unix/bunxh.inc
  • M rtl/unix/bunxovl.inc
  • M rtl/unix/bunxovlh.inc
  • M rtl/unix/cwstraix.inc
  • M rtl/unix/cwstring.pp
  • M rtl/unix/dl.pp
  • M rtl/unix/dos.pp
  • M rtl/unix/dynlibs.inc
  • M rtl/unix/genfunch.inc
  • M rtl/unix/genfuncs.inc
  • M rtl/unix/oscdecl.inc
  • M rtl/unix/oscdeclh.inc
  • M rtl/unix/syscgen.inc
  • M rtl/unix/sysdir.inc
  • M rtl/unix/sysfile.inc
  • M rtl/unix/sysunixh.inc
  • M rtl/unix/sysutils.pp
  • M rtl/unix/timezone.inc
  • M rtl/unix/unix.pp
  • M rtl/unix/unixutil.pp
  • M rtl/unix/unxdeclh.inc
  • M rtl/unix/unxovl.inc
  • M rtl/unix/x86.pp


* string -> shortstring
Commit consists out of
  • M rtl/unix/bunxovl.inc
  • M rtl/unix/genfunch.inc
  • M rtl/unix/genfuncs.inc
  • M rtl/unix/termiosh.inc
  • M rtl/unix/timezone.inc
  • M rtl/unix/ttyname.inc


* Some forgotten string -> shortstring instances
Commit consists out of
  • M rtl/inc/lineinfo.pp
  • M rtl/inc/lnfodwrf.pp
  • M rtl/unix/dos.pp
  • M rtl/unix/timezone.inc


* Some fixes in INtToBin, XorDecode/XorEncode
Commit consists out of
  • M packages/rtl-objpas/src/inc/strutils.pp


* Fix TDateTimeInfoRec
Commit consists out of
  • M rtl/objpas/sysutils/filutilh.inc
  • M rtl/win/sysutils.pp


* Dotted filenames for package rtl-objpas
Commit consists out of
  • A packages/rtl-objpas/namespaced/Data.FMTBcd.pp
  • A packages/rtl-objpas/namespaced/System.ConvUtils.pp
  • A packages/rtl-objpas/namespaced/System.DateUtils.pp
  • A packages/rtl-objpas/namespaced/System.Nullable.pp
  • A packages/rtl-objpas/namespaced/System.Rtti.pp
  • A packages/rtl-objpas/namespaced/System.StdConvs.pp
  • A packages/rtl-objpas/namespaced/System.StrUtils.pp
  • A packages/rtl-objpas/namespaced/System.Syshelpers.pp
  • A packages/rtl-objpas/namespaced/System.System.timespan.pp
  • A packages/rtl-objpas/namespaced/System.System.uitypes.pp
  • A packages/rtl-objpas/namespaced/System.VarUtils.pp
  • A packages/rtl-objpas/namespaced/System.Variants.pp
  • A packages/rtl-objpas/namespaced/System.WideStrUtils.pp
  • A packages/rtl-objpas/namespaces.lst
  • M packages/rtl-objpas/src/common/varutils.pp
  • M packages/rtl-objpas/src/inc/convutil.inc
  • M packages/rtl-objpas/src/inc/dateutil.inc
  • M packages/rtl-objpas/src/inc/fmtbcd.pp
  • M packages/rtl-objpas/src/inc/nullable.pp
  • M packages/rtl-objpas/src/inc/rtti.pp
  • M packages/rtl-objpas/src/inc/stdconvs.pp
  • M packages/rtl-objpas/src/inc/strutils.pp
  • M packages/rtl-objpas/src/inc/syshelpers.pp
  • M packages/rtl-objpas/src/inc/system.timespan.pp
  • M packages/rtl-objpas/src/inc/system.uitypes.pp
  • M packages/rtl-objpas/src/inc/variants.pp
  • M packages/rtl-objpas/src/inc/widestrutils.pp
  • M packages/rtl-objpas/src/win/varutils.pp


Fix compilation for msdos targets
Commit consists out of
  • M packages/rtl-objpas/src/inc/system.timespan.pp


Fix order of parameters of FillChar
Commit consists out of
  • M rtl/objpas/sysutils/dati.inc


* Hex2Bin Delphi-compatible overloads. Fixes issue gitlab 0038712
Commit consists out of
  • M packages/rtl-objpas/src/inc/strutils.pp
  • A tests/test/units/strutils/struth2b.pp
  • A tests/test/units/strutils/struth2bu.pp


* Redirect posex to pos, patch from rika. Fixes issue gitlab 0040389
Commit consists out of
  • M packages/rtl-objpas/src/inc/strutils.pp


* patch and test by Rika: Redirect StrUtils.RPos to StrUtils.RPosEx, fix a bit, improve a bit, resolves gitlab 0040394
Commit consists out of
  • M packages/rtl-objpas/src/inc/strutils.pp
  • A tests/test/units/strutils/trpos.pp


bypass `real` → `integer` conversion → `real` promotion in `dateUtils.dateOf`

The `dateUtils.dateOf` function takes one `tDateTime` value, a `real` value,
converts it to an `integer` using `trunc`, and then the value is automatically
promoted to a `real` value again (because of result data type `tDateTime`).

This is unnecessary (unless an error is the desired behavior).
You can use just `system.int` to obtain the integral (= date) part of `tDateTime`.
Commit consists out of
  • M packages/rtl-objpas/src/inc/dateutil.inc


+ simple test for Dateutils.DateOf
Commit consists out of
  • A packages/rtl-objpas/tests/tdateof.pp


* Add system.actions unit for Delphi compatibility
Commit consists out of
  • M packages/rtl-objpas/fpmake.pp
  • A packages/rtl-objpas/src/inc/system.actions.pp

needs anonymous methods



* Add system.math.vectors for Delphi compatibility.
Commit consists out of
  • M packages/rtl-objpas/fpmake.pp
  • A packages/rtl-objpas/src/inc/system.math.vectors.pp
  • M packages/rtl-objpas/tests/testrunner.rtlobjpas.pp
  • A packages/rtl-objpas/tests/tv.dpr
  • A packages/rtl-objpas/tests/utcmatrix.pp
  • A packages/rtl-objpas/tests/utcmatrix3d.pp
  • A packages/rtl-objpas/tests/utcpoint.pp
  • A packages/rtl-objpas/tests/utcquaternion.pp
  • A packages/rtl-objpas/tests/utcvector.pp
  • A packages/rtl-objpas/tests/utmathvectorbase.pas


Refactor and fix a bug in Boyer-Moore.
Commit consists out of
  • M packages/rtl-objpas/src/inc/strutils.pp
  • M tests/test/packages/rtl-objpas/tboyer.pp


* Patch from Rika to fix broken test (tw39885)
Commit consists out of
  • M packages/rtl-objpas/src/inc/strutils.pp


* Correct permissions
Commit consists out of
  • M packages/rtl-objpas/src/inc/system.actions.pp
  • M packages/rtl-objpas/src/inc/system.math.vectors.pp


Refactor promotional features of StrUtils.
Commit consists out of
  • M packages/rtl-objpas/src/inc/strutils.pp
  • A tests/test/tstrutils3.pp


* Fix compilation of unicode RTL after patch by Rika
Commit consists out of
  • M packages/rtl-objpas/src/inc/strutils.pp


* correct aDelta size
Commit consists out of
  • M packages/rtl-objpas/src/inc/strutils.pp


* Fix typo, missing brackets
Commit consists out of
  • M packages/rtl-objpas/src/inc/strutils.pp


* patch by Евгений Савин to make Variant to string convertion use CurrToStr for varCurrency, resolves gitlab 0040624
Commit consists out of
  • M packages/rtl-objpas/src/inc/cvarutil.inc
  • A tests/webtbs/tw40624.pp


* Add TRttiEnumerationType for Delphi compatibility
Commit consists out of
  • M packages/rtl-objpas/src/inc/rtti.pp


* Add TTouchTracking for Delphi compatibility
Commit consists out of
  • M packages/rtl-objpas/src/inc/system.uitypes.pp


* Virtual key definitions added
Commit consists out of
  • M packages/rtl-objpas/src/inc/system.uitypes.pp


* Get extended methods, fields and property info.
Commit consists out of
  • M packages/rtl-objpas/src/inc/rtti.pp
  • M packages/rtl-objpas/tests/testrunner.rtlobjpas.pp
  • M packages/rtl-objpas/tests/tests.rtti.pas
  • M packages/rtl-objpas/tests/tests.rtti.types.pas


Fix msdos compilation failure by using CodePointer type for GetCodeAddress TRttiRecordMethod function
Commit consists out of
  • M packages/rtl-objpas/src/inc/rtti.pp


* Add TPageType
Commit consists out of
  • M packages/rtl-objpas/src/inc/system.uitypes.pp


* Return delphi-compatible output for TValue.ToString when empty
Commit consists out of
  • M packages/rtl-objpas/src/inc/rtti.pp


+ Add Simple MonitorSupport implementation
Commit consists out of
  • A packages/rtl-objpas/examples/monex.pp
  • M packages/rtl-objpas/fpmake.pp
  • A packages/rtl-objpas/namespaced/System.MonitorSupport.pp
  • M packages/rtl-objpas/namespaces.lst
  • A packages/rtl-objpas/src/inc/fpmonitor.pp
  • A packages/rtl-objpas/tests/testrunner.rtlobjpas
  • A packages/rtl-objpas/tests/testrunner.rtlobjpas.lpi
  • M packages/rtl-objpas/tests/testrunner.rtlobjpas.pp
  • A packages/rtl-objpas/tests/utcfpmonitor.pas


* Get Field Attributes + tests
Commit consists out of
  • M packages/rtl-objpas/src/inc/rtti.pp
  • M packages/rtl-objpas/tests/testrunner.rtlobjpas.lpi
  • M packages/rtl-objpas/tests/testrunner.rtlobjpas.pp
  • A packages/rtl-objpas/tests/tests.rtti.attrtypes.pas
  • M packages/rtl-objpas/tests/tests.rtti.pas
  • M packages/rtl-objpas/tests/tests.rtti.types.pas


Create TMonitorData initialized.
Commit consists out of
  • M packages/rtl-objpas/src/inc/fpmonitor.pp


Set ‘TMonitorData’s without locking.
Commit consists out of
  • M packages/rtl-objpas/src/inc/fpmonitor.pp
  • M rtl/inc/monitor.inc
  • M rtl/inc/objpas.inc
  • M rtl/inc/objpash.inc


Manage ‘TPulseData’s as linked list of structures allocated in ‘Wait’ stack frames.
Commit consists out of
  • M packages/rtl-objpas/src/inc/fpmonitor.pp


‘LockCount’ does not require atomics.
Commit consists out of
  • M packages/rtl-objpas/src/inc/fpmonitor.pp


TMonitor.Wait temporarily unlocks through recursive calls.
Commit consists out of
  • M packages/rtl-objpas/src/inc/fpmonitor.pp


Use exponential backoff in timeouted ‘TMonitor.Enter’ and explain why it’s still a bad solution.
Commit consists out of
  • M packages/rtl-objpas/src/inc/fpmonitor.pp


* Do not prefix with unit name unless necessary
Commit consists out of
  • M packages/rtl-objpas/src/inc/fpmonitor.pp


* Fix wrong type for threadID
Commit consists out of
  • M packages/rtl-objpas/src/inc/fpmonitor.pp


* Implement TRttiField.(G|S)etValue
Commit consists out of
  • M packages/rtl-objpas/src/inc/rtti.pp


Alternative implementation of TMonitor for Windows Vista+.
Commit consists out of
  • M packages/rtl-objpas/fpmake.pp
  • A packages/rtl-objpas/namespaced/System.WindowsMonitorSupport.pp
  • M packages/rtl-objpas/namespaces.lst
  • M packages/rtl-objpas/src/inc/fpmonitor.pp
  • A packages/rtl-objpas/src/win/fpwinmonitor.pp
  • M packages/rtl-objpas/tests/utcfpmonitor.pas


* Implement GetCodeAddress for TRttiInstanceMethod
Commit consists out of
  • M packages/rtl-objpas/src/inc/rtti.pp


* Fix memory leaks
Commit consists out of
  • M packages/rtl-objpas/src/inc/rtti.pp


* Remove additional memleak
Commit consists out of
  • M packages/rtl-objpas/src/inc/rtti.pp


* Fix duplicate registration of existing RTTI
Commit consists out of
  • M packages/rtl-objpas/src/inc/rtti.pp


* Fix ref count of interface during cast
Commit consists out of
  • M packages/rtl-objpas/src/inc/rtti.pp


* Synchronize Method/Field treatment. Correct parent for fields
Commit consists out of
  • M packages/rtl-objpas/src/inc/rtti.pp
  • M packages/rtl-objpas/tests/tests.rtti.pas
  • M packages/rtl-objpas/tests/tests.rtti.types.pas


* Complete erroneously partial commit
Commit consists out of
  • M packages/rtl-objpas/src/inc/rtti.pp


* Allow to call constructor using Invoke()
Commit consists out of
  • M packages/rtl-objpas/src/inc/rtti.pp
  • M packages/rtl-objpas/tests/tests.rtti.invoke.pas
  • M packages/rtl-objpas/tests/tests.rtti.invoketypes.pas


* Remove debug statement
Commit consists out of
  • M packages/rtl-objpas/src/inc/rtti.pp


* Attributes for methods
Commit consists out of
  • M packages/rtl-objpas/src/inc/rtti.pp


* Properly pass on FUsePublishedOnly to properties. Fixes issue gitlab 0040702
Commit consists out of
  • M packages/rtl-objpas/src/inc/rtti.pp


* packages part of gitlab 0035433
Commit consists out of
  • M packages/fcl-stl/src/garrayutils.pp
  • M packages/gnutls/src/gnutlssockets.pp
  • M packages/libusb/src/libusb.pp
  • M packages/rtl-objpas/src/inc/dateutil.inc


* Int64 and QWord are valid types. Fix issue gitlab 0040778
Commit consists out of
  • M packages/rtl-objpas/src/inc/variants.pp


* Allow ToString for object value
Commit consists out of
  • M packages/rtl-objpas/src/inc/rtti.pp


* Add missing PAlphaColorF
Commit consists out of
  • M packages/rtl-objpas/src/inc/system.uitypes.pp


* Fixed DeclaredFields for record, should be the same as fields
Commit consists out of
  • M packages/rtl-objpas/src/inc/rtti.pp


* Add TCubicBezierCurve for Delphi compatibility
Commit consists out of
  • M packages/rtl-objpas/src/inc/system.math.vectors.pp


Move varutils.pp from src/common to src/inc directory
Commit consists out of
  • M packages/rtl-objpas/fpmake.pp
  • R100 packages/rtl-objpas/src/common/varutils.pp packages/rtl-objpas/src/inc/varutils.pp


Fix directory for varutils unit
Commit consists out of
  • M packages/rtl-objpas/namespaces.lst


Use single main file src/inc/varutils.pp for Windows and other OSes
Commit consists out of
  • M packages/rtl-objpas/fpmake.pp
  • M packages/rtl-objpas/src/inc/varutils.pp
  • R077 packages/rtl-objpas/src/win/varutils.pp packages/rtl-objpas/src/win/wvarutil.inc


Adapt namespaces.lst to removal of src/win/varutils.pp separate source file
Commit consists out of
  • M packages/rtl-objpas/namespaces.lst


Fix syntax error in last commit
Commit consists out of
  • M packages/rtl-objpas/src/inc/varutils.pp


* Some utility routines
Commit consists out of
  • M packages/rtl-objpas/src/inc/system.uitypes.pp


* Small correction in property resolve
Commit consists out of
  • M packages/rtl-objpas/src/inc/rtti.pp


* Correctly pass UsePublishedOnly on to sub-contexts. Fixes issue gitlab 0040828
Commit consists out of
  • M packages/rtl-objpas/src/inc/rtti.pp
  • A tests/webtbs/tw40828.pp


* Fix bug with nameIndex
Commit consists out of
  • M packages/rtl-objpas/src/inc/rtti.pp


* Handle tkFloat in TValue.ToString
Commit consists out of
  • M packages/rtl-objpas/src/inc/rtti.pp


* Implement DropContext/KeepContext for Delphi compatibility. Patch by Artem Izmaylov. Fixes issue gitlab 0040884
Commit consists out of
  • M packages/rtl-objpas/src/inc/rtti.pp


Adding some convinience functions to TNullable
Commit consists out of
  • M packages/rtl-objpas/src/inc/nullable.pp
  • M tests/test/units/nullable/tnull.pp


Adding tuple unit
Commit consists out of
  • A packages/rtl-objpas/namespaced/System.Tuples.pp
  • M packages/rtl-objpas/namespaces.lst
  • A packages/rtl-objpas/src/inc/tuples.pp
  • A tests/test/units/tuples/ttuple.pp


+ Add license header to tuples, add to fpmake
Commit consists out of
  • M packages/rtl-objpas/fpmake.pp
  • M packages/rtl-objpas/src/inc/tuples.pp


Adding TNullPtr to types

Additional changes:
* Now using TNullPtr instead of custom type in TNullable
* Adding assignment of variants with TNulPtr to avoid name conflicts
* Adding comparison to TNullPtr (Pointers, TObjects, TNullable)
Commit consists out of
  • M packages/rtl-objpas/src/inc/nullable.pp
  • M packages/rtl-objpas/src/inc/variants.pp
  • M rtl/objpas/types.pp
  • M tests/test/units/nullable/tnull.pp
  • A tests/test/units/types/tnullptr.pp
  • A tests/test/units/variants/tvariants.pp


Adding pointer access to nullable
Commit consists out of
  • M packages/rtl-objpas/src/inc/nullable.pp
  • M tests/test/units/nullable/tnull.pp


* recordrtti needs to override getmethods. Fixes issue gitlab 0040951
Commit consists out of
  • M packages/rtl-objpas/src/inc/rtti.pp


* Add GetMethod(name), patch by Lipinast Lekrisov, fixes issue gitlab 0040953
Commit consists out of
  • M packages/rtl-objpas/src/inc/rtti.pp


* Patch from Lipinast Lekrisov to implement setting method-type properties. Fixes issue gitlab 0040970
Commit consists out of
  • M packages/rtl-objpas/src/inc/rtti.pp


Added TRttiIndexedProperty, the whole property handling infrastructure has been significantly redesigned
Commit consists out of
  • M packages/rtl-objpas/src/inc/rtti.pp
  • M rtl/objpas/typinfo.pp


Fixed TRttiRecordType.ResolveProperties (records do not have a published section)
Commit consists out of
  • M packages/rtl-objpas/src/inc/rtti.pp


* fix compilation on systems where SizeOf(CodePointer) <> SizeOf(Pointer): disable ToString for tkMethod on these systems for now
Commit consists out of
  • M packages/rtl-objpas/src/inc/rtti.pp


* in the Win64 ABI all const record parameters are passed by reference
Commit consists out of
  • M packages/rtl-objpas/src/x86_64/invoke.inc


* Patch from Евгений Савин to fix missing ansistring conversion in TryCast. Fixes issue gitlab 0041002
Commit consists out of
  • M packages/rtl-objpas/src/inc/rtti.pp


* Patch from Евгений Савин to implement TValue.Cast for floats. Fixes issue gitlab 0041011
Commit consists out of
  • M packages/rtl-objpas/src/inc/rtti.pp
  • A tests/webtbs/tw41011.pp


* Fix comp errors. Patch by Евгений Савин. Fixes issue gitlab 0041016
Commit consists out of
  • M packages/rtl-objpas/src/inc/rtti.pp


* Delphi-compatible output for tvalue.asstring for float value. Fixes issue gitlab 0041027
Commit consists out of
  • M packages/rtl-objpas/src/inc/rtti.pp


* Fix TValue casts, patch by Евгений Савин, fixes issue gitlab 0041030
Commit consists out of
  • M packages/rtl-objpas/src/inc/rtti.pp
  • M packages/rtl-objpas/tests/tests.rtti.invoke.pas
  • M packages/rtl-objpas/tests/tests.rtti.invoketypes.pas
  • M packages/rtl-objpas/tests/tests.rtti.value.pas
  • A tests/webtbs/tw41030.pp


* Add IsType with aEmptyAsAnyType param
Commit consists out of
  • M packages/rtl-objpas/src/inc/rtti.pp


* Patch from Евгений Савин to fix TValue.From. Fixes issue gitlab 0041013
Commit consists out of
  • M packages/rtl-objpas/src/inc/rtti.pp
  • M packages/rtl-objpas/tests/tests.rtti.value.pas


* correct TValue.Cast, patch by Евгений Савин. Fixes issue gitlab 0041042
Commit consists out of
  • M packages/rtl-objpas/src/inc/rtti.pp
  • M packages/rtl-objpas/tests/tests.rtti.value.pas


* Add overload, needed when specializing in Delphi mode
Commit consists out of
  • M packages/rtl-objpas/src/inc/rtti.pp


* Allow assign of pointer to TValue. Patch by Lipinast Lekrisov
Commit consists out of
  • M packages/rtl-objpas/src/inc/rtti.pp
  • M packages/rtl-objpas/tests/tests.rtti.value.pas


* Introduce AsRecord. Patch by Lipinast Lekrisov
Commit consists out of
  • M packages/rtl-objpas/src/inc/rtti.pp


* Allow to cast pointer TValue to class pointer. Patch from Lipinast Lekrisov
Commit consists out of
  • M packages/rtl-objpas/src/inc/rtti.pp


* TValue.From with buffer and typeinfo. Patch from Lipinast Lekrisov
Commit consists out of
  • M packages/rtl-objpas/src/inc/rtti.pp


* Delphi-compatible ToString for TRttiType. Patch from Lipinast Lekrisov
Commit consists out of
  • M packages/rtl-objpas/src/inc/rtti.pp


* Introduce AsOrdinal. Patch by Lipinast Lekrisov
Commit consists out of
  • M packages/rtl-objpas/src/inc/rtti.pp


* Get method by address. Patch by Lipinast Lekrisov
Commit consists out of
  • M packages/rtl-objpas/src/inc/rtti.pp
  • M packages/rtl-objpas/tests/tests.rtti.pas


* Correct TRttiOrdinalType.GetIsOrdinal. Patch from Lipinast Lekrisov
Commit consists out of
  • M packages/rtl-objpas/src/inc/rtti.pp


* Introduce IsClassProperty, Index and Default in TRttiProperty. Patch from Lipinast Lekrisov
Commit consists out of
  • M packages/rtl-objpas/src/inc/rtti.pp


* Fix compiler warnings and hints
Commit consists out of
  • M packages/rtl-objpas/src/inc/rtti.pp


* Introduce TRttiMethodType.GetMethodKind. Patch by Lipinast Lekrisov
Commit consists out of
  • M packages/rtl-objpas/src/inc/rtti.pp


* Read/Write static properties. Patch from Lipinast Lekrisov
Commit consists out of
  • M packages/rtl-objpas/src/inc/rtti.pp
  • M packages/rtl-objpas/tests/testrunner.rtlobjpas.lpi
  • M packages/rtl-objpas/tests/testrunner.rtlobjpas.pp
  • A packages/rtl-objpas/tests/tests.rtti.attrtypes2.pp
  • M packages/rtl-objpas/tests/tests.rtti.pas


* Invoke for record methods, refactoring method rtti by Lipinast Lekrisov
Commit consists out of
  • M packages/rtl-objpas/src/inc/rtti.pp
  • M packages/rtl-objpas/tests/tests.rtti.attrtypes2.pp
  • M packages/rtl-objpas/tests/tests.rtti.invoke.pas


* Improvements to TValue.ToString by Lipinast Lekrisov
Commit consists out of
  • M packages/rtl-objpas/src/inc/rtti.pp


* Small improvement in setting method prop, by Lipinast Lekrisov
Commit consists out of
  • M packages/rtl-objpas/src/inc/rtti.pp


* Forgot to commit, main part of indexed properties implementation by Lipinast Lekrisov
Commit consists out of
  • M packages/rtl-objpas/src/inc/rtti.pp


* TValue.Asstring for double
Commit consists out of
  • M packages/rtl-objpas/src/inc/rtti.pp


* Small change in indexed property .ToString
Commit consists out of
  • M packages/rtl-objpas/src/inc/rtti.pp


* SMall optimization in TRttiInstanceMethod.GetParameters
Commit consists out of
  • M packages/rtl-objpas/src/inc/rtti.pp


* GetDataSize is 0 for empty TValue
Commit consists out of
  • M packages/rtl-objpas/src/inc/rtti.pp


* GetHasExtendedInfo returns false in TRttiMethod
Commit consists out of
  • M packages/rtl-objpas/src/inc/rtti.pp


* optimization of TRttiInstanceType.ResolveExtendedDeclaredProperties
Commit consists out of
  • M packages/rtl-objpas/src/inc/rtti.pp


* Extend error message SErrInvokeArgInvalidType
Commit consists out of
  • M packages/rtl-objpas/src/inc/rtti.pp


* Fixes after re-running test
Commit consists out of
  • M packages/rtl-objpas/src/inc/rtti.pp
  • M packages/rtl-objpas/tests/tests.rtti.value.pas


* Order of parent/child methods is now same as in delphi documentation
Commit consists out of
  • M packages/rtl-objpas/src/inc/rtti.pp
  • M packages/rtl-objpas/tests/tests.rtti.pas


* Correctly set FDeclaredProperties length
Commit consists out of
  • M packages/rtl-objpas/src/inc/rtti.pp


* fix compilation on i8086 where depending on the memory type code and data pointers may be different (Note: this does not mean that the code works as the RTTI data generated by the compiler does not seem valid either)
Commit consists out of
  • M packages/rtl-objpas/src/inc/rtti.pp


- current Lazarus IDEs can handle generic methods, so no need for NoGenericMethods anymore
Commit consists out of
  • M packages/rtl-objpas/src/inc/rtti.pp


+ initial implementation of System.Rtti.Invoke() for WebAssembly. Currently
only works with the internal linker. Not all types have been tested, yet.
Commit consists out of
  • M packages/rtl-objpas/fpmake.pp
  • M packages/rtl-objpas/src/inc/rtti.pp
  • A packages/rtl-objpas/src/wasm32/invoke.inc


* proper handling for boolean results (especially Boolean64 and QWordBool) in System.Rtti.Invoke
Commit consists out of
  • M packages/rtl-objpas/src/wasm32/invoke.inc


* also handle enumeration results and integer result sizes, other than 32-bit in System.Rtti.Invoke for WebAssembly
Commit consists out of
  • M packages/rtl-objpas/src/wasm32/invoke.inc


Fix NaturalCompareText for string = unicodestring.
Commit consists out of
  • M packages/rtl-objpas/src/inc/strutils.pp


* Call correct newinstance when overridden. Fixes issue gitlab 0041090
Commit consists out of
  • M packages/rtl-objpas/src/inc/rtti.pp
  • M packages/rtl-objpas/tests/testrunner.rtlobjpas.lpi
  • M packages/rtl-objpas/tests/tests.rtti.invoke.pas
  • M packages/rtl-objpas/tests/tests.rtti.invoketypes.pas


* Patch from Lipinast Lekrisov to get/set record-typed values. Fixes issue gitlab 0041129
Commit consists out of
  • M packages/rtl-objpas/src/inc/rtti.pp
  • M packages/rtl-objpas/tests/testrunner.rtlobjpas.lpi
  • M packages/rtl-objpas/tests/tests.rtti.pas
  • M packages/rtl-objpas/tests/tests.rtti.types.pas


* Minimal TTimeZone class for Delphi compatibility
Commit consists out of
  • M packages/rtl-objpas/src/inc/dateutil.inc


Try to solve compilation failure for msdos OS
Commit consists out of
  • M packages/rtl-objpas/src/inc/rtti.pp


* Various IsXYZ functions for TValue
Commit consists out of
  • M packages/rtl-objpas/src/inc/rtti.pp


* Add Int128 functions
Commit consists out of
  • M packages/rtl-objpas/src/inc/fmtbcd.pp


Take into account the size of HexText TBytes open array before calling HexToBin overload with PAnsiChar first parameter
Commit consists out of
  • M packages/rtl-objpas/src/inc/strutils.pp


Add support for win16 target by introducing USE_WINDOWS_UNIT define, which is set for other Windows OSes
Commit consists out of
  • M packages/rtl-objpas/src/inc/dateutil.inc


Use USE_WINDOWS_OLE_FUNCTIONS macro to avoid build failure for win16 OS target
Commit consists out of
  • M packages/rtl-objpas/src/inc/varutilh.inc


Also use USE_WINDOWS_UNIT macro in rtti unit
Commit consists out of
  • M packages/rtl-objpas/src/inc/rtti.pp


* ported mechanism from unit activex to deal with ansi/unicode -> widestring conversion.

Targeted at bug gitlab 0041235
Commit consists out of
  • M packages/rtl-objpas/src/inc/variants.pp


Revert "* ported mechanism from unit activex to deal with ansi/unicode -> widestring conversion."

This reverts commit 1208f4d5b9a5157cf205c71d9244fb9bf41ad15d
Commit consists out of
  • M packages/rtl-objpas/src/inc/variants.pp


* ported mechanism from unit activex to deal with ansi/unicode -> widestring conversion.
* 2nd attempt, now under $IFDEF MSWINDOWS
Commit consists out of
  • M packages/rtl-objpas/src/inc/variants.pp


Set USE_MSWINDOWS_OLE macro on Windows OSes supporting OLE strings, and use it
Commit consists out of
  • M packages/rtl-objpas/src/inc/variants.pp


* Patch from Lacak to add support for densely packed decimal64 format
Commit consists out of
  • M packages/rtl-objpas/src/inc/fmtbcd.pp