Michaël Van Canneyt
f1c4f0c879
* Check component is not nil prior to calling validateinsert
2024-03-14 17:14:13 +01:00
Pierre Muller
603dd63b39
Fix make variable name error: OBJPAS_DEPS_SPU => OBJPAS_DEPS_CPU
2024-03-11 14:23:25 +00:00
Pierre Muller
1230fc811a
Use rtl/java version of objpas.pp source for java OS
2024-03-11 14:22:10 +00:00
Michaël Van Canneyt
8665e03886
* Add parameter to skip inherited fields
2024-03-11 13:52:35 +01:00
Rika Ichinose
a35577593b
Don’t misalign FillChar pattern.
2024-03-10 21:24:21 +00:00
florian
edaee6f392
* do not copy sets in fpc_varset_(un)set if source and dest are the same
2024-03-09 22:51:14 +01:00
Rika Ichinose
4c6abb38b1
Non-nil-aware fpc_ansistr_compare(|_equal).
2024-03-08 18:19:03 +00:00
Pierre Muller
5a7d5367d2
Try to implement UnicodeFromLocaleChars for java
2024-03-05 20:58:30 +00:00
Michaël Van Canneyt
48cb0eb5b1
* force correct strpas overload when using unicodestrings
2024-03-04 16:49:58 +01:00
Michaël Van Canneyt
05f0ceeb26
* Atributes for class/record methods
2024-03-02 14:15:22 +01:00
florian
4e1f854d49
* patch by Rika + test: Don’t explicitly change GetMem(0) to GetMem(1), it works anyway, resolves #40456
2024-03-01 22:49:45 +01:00
florian
11f076f0e7
+ CMPXCHG16BSupport
2024-02-28 22:18:42 +01:00
Michaël Van Canneyt
4769ed948a
* Add codeaddress to extended RTTI for static methods
2024-02-28 11:52:16 +01:00
Michaël Van Canneyt
8b40033964
* Change argument name
2024-02-27 09:27:41 +01:00
Rika Ichinose
7589bb39b8
Set ‘TMonitorData’s without locking.
2024-02-27 07:54:31 +00:00
Michaël Van Canneyt
06601d5e60
* Fix TExtendedVmtFieldEntry.GetTail
2024-02-26 15:20:15 +01:00
Michaël Van Canneyt
8527cb17f8
* Fix overflow in initialization of return value
2024-02-25 19:57:39 +01:00
Michaël Van Canneyt
bd2b0c8dca
* Fix use of wrong memory size when getting extended property info
2024-02-25 19:57:39 +01:00
Michaël Van Canneyt
b3800d38cb
* Handle potential double defintion of INFINITE
2024-02-24 19:52:00 +01:00
Michaël Van Canneyt
4c26e4f989
* Enable monitor support
2024-02-24 18:11:23 +01:00
Michaël Van Canneyt
e1b2feac33
* Set monitor structures in place
2024-02-24 18:11:23 +01:00
Pierre Muller
2efb72bede
Use call to seterrno function inside FpSysCall functions for powerpc cpu on linux OS
2024-02-24 00:05:20 +03:00
Rika Ichinose
e87e14c7cc
Make some i386.inc functions “nostackframe”.
2024-02-21 21:08:36 +00:00
Jonas Maebe
8baa4f41db
JVM: fix system unit compilation error
...
Apply same change as to systemh.inc in bccc0b195e
2024-02-21 21:48:29 +01:00
Michaël Van Canneyt
97495e93b8
* Delphi compatible TCollection.Sort() using helper
2024-02-21 10:31:29 +01:00
florian
bccc0b195e
* allow type = type ... ; syntax only for previously declared types, avoids also internal error for #40566
2024-02-20 23:14:31 +01:00
Michaël Van Canneyt
b61a0fab97
* CurveKappa, CurveKappaInv
2024-02-20 17:50:10 +01:00
Michaël Van Canneyt
9a344568df
* RectWidth was not public
2024-02-20 17:48:26 +01:00
Michaël Van Canneyt
31b978f3b7
* Add UnicodeFromLocaleChars for Delphi compatibility
2024-02-20 17:09:35 +01:00
marcoonthegit
5c1997b3d5
* fix ident and executable note in profiler file
2024-02-20 15:49:09 +01:00
Michaël Van Canneyt
30a20cc209
* Add operators to TMethod, for Delphi compatibility
2024-02-20 15:36:18 +01:00
Michaël Van Canneyt
bc714c0fd7
* Added Delphi-compatible overload for ToString with UpdateCapacity argument
2024-02-20 14:49:13 +01:00
Michaël Van Canneyt
852cd355e4
* Use correct error number for missing widestring manager
2024-02-20 14:32:45 +01:00
Michaël Van Canneyt
ad93958e5b
* Add delphi-compatible constant (including the typo in the name ;))
2024-02-20 11:08:39 +01:00
Michaël Van Canneyt
8f8ce13b41
* Add IsUniqueGlobalComponentName
2024-02-20 11:01:35 +01:00
Michaël Van Canneyt
6f25cccda9
* Select proper stringbuilder depending on size of char
2024-02-20 10:46:44 +01:00
Michaël Van Canneyt
1e1b273c67
* Correct TCharArray declaration, disambiguate between widechar/char
2024-02-20 10:16:56 +01:00
Karoly Balogh
572a340a26
m68k-atari: mark functions and API calls related to exiting the program as noreturn
2024-02-20 03:56:17 +01:00
Karoly Balogh
eb6f29d084
m68k: disable verbose error reporting of the stub unicode and threadmanagers by default on Amiga, Atari, Human68k, and Sinclair QL
2024-02-20 03:56:17 +01:00
Karoly Balogh
88c7954d9f
rtl: add two defines toallow disabling the verbose error of the stub unicodestringmanager and threadmanager
2024-02-20 03:56:17 +01:00
Michaël Van Canneyt
30f514eb6b
* Add CanObserve and ObserverAdded to TComponent, for delphi compatibility
2024-02-19 11:21:42 +01:00
Rika Ichinose
2d6294eb26
MovQ + Shr → PExtrW.
2024-02-18 21:37:39 +00:00
Rika Ichinose
e5b47310c8
Supposedly faster i386 int() and frac().
2024-02-18 21:37:39 +00:00
Michaël Van Canneyt
b7e8dd6268
* Add optional parameter to get methods of only current class
2024-02-18 21:36:05 +01:00
marcoonthegit
f582f93a0a
* git changed to 1024 for mnamelen apparently fixes tdos1 test crash
2024-02-18 16:03:22 +01:00
marcoonthegit
e9b12b41db
* also add stack note for trunke
2024-02-18 15:27:23 +01:00
Michaël Van Canneyt
9000f8742d
* Fix error in TReadr.ReadString. Fixes issue #40652
2024-02-18 10:44:20 +01:00
Michaël Van Canneyt
f6ce76b638
* Fix in overloads of GetFieldList
2024-02-18 10:44:20 +01:00
Michaël Van Canneyt
89f0e052df
* Add Clients property to TBasicAction
2024-02-16 15:50:51 +01:00
Michaël Van Canneyt
f011e80cb2
* Add scCommand (command key)
2024-02-16 15:23:03 +01:00
Michaël Van Canneyt
055740e2b3
* Overloads for TResourcestream.Create
2024-02-16 14:31:01 +01:00
Michaël Van Canneyt
6edfaed0ac
* Fix signature of TReader.SetName
2024-02-16 14:12:56 +01:00
Michaël Van Canneyt
689fae7dd9
* Add TReader.ReadStr for Delphi compatibility
2024-02-16 12:07:45 +01:00
Michaël Van Canneyt
d51a0c6b3c
* Forgot to commit.
2024-02-16 11:45:16 +01:00
Michaël Van Canneyt
a320464afe
* Add support for vaDouble
2024-02-16 11:42:52 +01:00
Michaël Van Canneyt
87a37e70ee
* Add EnumModules for Delphi compatibility
2024-02-16 11:15:27 +01:00
florian
57f6ed804e
+ set pi_do_call on xtensa as well if we check for fpu exceptions
...
* cosmetics
2024-02-14 23:04:25 +01:00
Michaël Van Canneyt
6d49f7db7b
* Correct UTF8 detection
2024-02-14 20:08:16 +01:00
Michaël Van Canneyt
186f93a8c9
* Add TestStreamFormat
2024-02-14 18:18:21 +01:00
Michaël Van Canneyt
7506277dc1
* Add TReader.SetName for Delphi compatibility
2024-02-14 18:02:45 +01:00
Michaël Van Canneyt
3a1f180a56
* Add delphi-compatible TPointF.EqualsTo overload
2024-02-14 15:30:19 +01:00
Michaël Van Canneyt
2d9ef694dd
* Make TComponent.GetObservers virtual and protected for Delphi compatibility
2024-02-14 14:30:16 +01:00
Michaël Van Canneyt
d1b7a49700
* Move move free notifications to separate procedure. Fixes issue #40638
2024-02-14 12:41:59 +01:00
Michaël Van Canneyt
4af99236b0
* Add TDispatchMessage
2024-02-13 19:57:05 +01:00
florian
e7600ee245
* patch by Rika: Small improvements to (a|u)strings.inc, resolves #40364
2024-02-11 16:29:53 +01:00
Rika Ichinose
c29dd86bb2
Remove runtime ABI adapter in x86_64.inc:IndexByte/Word, and save two jumps in the common case.
2024-02-11 15:05:03 +00:00
Rika Ichinose
7bf502ad40
Change Mov*DQ to Mov*PS; they are always equivalent because no operations but the memory transfers are performed, and 1 byte shorter each.
2024-02-10 22:47:40 +00:00
Rika Ichinose
12f18177ae
Simplify x86_64.inc:Move non-temporal loops, and adjust thresholds for move distances considered too short for NT.
2024-02-10 22:47:40 +00:00
Rika Ichinose
0b5998ee8b
Write two last values after 2× loops unconditionally instead of an extra check.
2024-02-10 22:47:40 +00:00
Rika Ichinose
e395166cb7
Check for Move overlaps in more obvious way (that also does no jumps in forward case).
2024-02-10 22:47:40 +00:00
marcoonthegit
78eb340a4f
* change elfid to 1400097 aka FreeBSD 14.0
2024-02-10 17:02:44 +01:00
Sven/Sarah Barth
244d3df869
* make Lazarus' CodeTools happy
2024-02-09 15:10:31 +01:00
Sven/Sarah Barth
75b5e8e63d
* fix #40603 :
...
- initialize thrdinfo record using Default() so that padding bytes are zeroed as well
- correctly pass the count of ULONG_PTRs
2024-02-09 15:08:27 +01:00
Michaël Van Canneyt
cde58d66fc
* Make GetEnumName safer, check actual type. Allow passing an integer
2024-02-06 18:04:44 +01:00
Michaël Van Canneyt
c9b7a3b3b5
* Use value for fmShareNoLocking which does not overlap with classes fmCreate
2024-01-30 13:35:54 +01:00
Pierre Muller
57e74e0c8b
Regenerated Makefile's after: Add linux dependency on syscall unit for libc on i386 and x86_64
2024-01-29 11:20:47 +00:00
Pierre Muller
2e6a31df8b
Add linux dependency on syscall unit for libc on i386 and x86_64
2024-01-29 11:20:09 +00:00
Michaël Van Canneyt
c3339e9a51
* Prevent file handle leak
2024-01-28 11:30:37 +01:00
Michaël Van Canneyt
e79f5ef577
* Introduce fmShareNoLocking to disable locking of file descriptors on unix
2024-01-28 11:30:37 +01:00
Rika Ichinose
48815baef6
Load oleaut32.dll for widestrings on demand.
...
Most of the applications don’t and shouldn’t use widestrings, as unicodestrings are superior.
2024-01-26 22:09:41 +00:00
florian
acb6c7f36b
* win64 has always SetThreadStackGuarantee
2024-01-26 21:42:26 +01:00
Rika Ichinose
a774075f2f
Support Windows XP where SetThreadStackGuarantee is absent.
2024-01-26 16:57:49 +03:00
florian
a2f2af87d2
* Windows CE does not support SetThreadStackGuarantee
2024-01-25 22:06:13 +01:00
florian
14ab1cfb71
* set stack margin on windows, so there is stack space left for exception handling in case of a stack overflow, resolves #40589
2024-01-24 21:31:03 +01:00
Sven/Sarah Barth
4aeb1ee223
* fix implementation comment
2024-01-22 22:27:33 +01:00
florian
40072fb762
* defines fixed
2024-01-22 22:14:06 +01:00
florian
e0a5d07e37
+ manually added new syscalls to i386-android
2024-01-21 21:14:57 +01:00
florian
dc5041d778
* fix compilation for mipsel-android (hopefully)
2024-01-21 11:32:28 +01:00
florian
3cd7c675b1
* manually added newer syscall numbers for arm-android
2024-01-20 14:10:40 +01:00
florian
785e259e62
* compilation on linux with FPC_USE_LIBC fixed
2024-01-19 23:45:07 +01:00
florian
185a346744
* fix darwin compilation after TTimespecArr changes
2024-01-18 22:19:42 +01:00
Michaël Van Canneyt
e9c6f1c152
* Delphi-compatible overloads UTF8ToUnicodeString
2024-01-18 09:32:15 +01:00
florian
54dba5738c
* cleaned up TTimespecArr declarations
2024-01-17 23:25:03 +01:00
florian
4dc4d2b2ba
* use TTimespecArr instead of tkernel_timespecs in sysutils
2024-01-17 23:25:03 +01:00
marcoonthegit
231007ebda
* check length of optstring before dereferencing (optstring[1]) it. Fixes #40596
2024-01-17 11:41:16 +01:00
Sven/Sarah Barth
21ffa221e6
* fix #40595 : correctly access the list of parameters of the extended method table
...
+ added test
2024-01-15 23:14:38 +01:00
florian
b81f92536d
* avoid that fpc_fillmem does not inline due too much nested calls
2024-01-15 22:42:53 +01:00
Sven/Sarah Barth
dd4f7e9148
* fix #40592 : make the Delphi-compatible attributes usable, but in a way that makes it clear to the user that they won't work
...
+ added test
2024-01-15 22:29:47 +01:00
Sven/Sarah Barth
38ca4f9157
* remove semicolon to make Lazarus happy
2024-01-15 22:29:47 +01:00
florian
9ee2eee293
* fix utimensat and utimensat if the rtl is compiled with -dFPC_USE_LIBC
2024-01-15 21:56:40 +01:00
florian
654d75b777
* fix bootstrapping with with 3.2.2 and -dFPC_USE_LIBC
2024-01-15 21:56:09 +01:00
florian
9bb6a32c62
* avoid wrong warning about FillChar not initializing the output parameter in case count <= 0
2024-01-15 21:54:11 +01:00
Michaël Van Canneyt
af3ebf1464
* Change GetSystemTimes signature to be delphi compatible, implement for linux
2024-01-15 15:41:49 +01:00
Pierre Muller
81ae7063f3
Add new DragonFly OS syscall number up to release 6.4.0 (v6.4.0 tag on https://gitweb.dragonflybsd.org/dragonfly.git )
2024-01-15 15:18:56 +01:00
Michaël Van Canneyt
49100cc42b
* Add Current and CurrentIsMain
2024-01-15 14:19:53 +01:00
Pierre Muller
f506df022e
Add missing syscall_nr_futimens for NetBSD OS
2024-01-15 10:00:55 +01:00
florian
774e0f9122
+ support for fputimens on non-linux OSes
...
* reworked fputimens support on linux
+ FileSetDate for all unix OSes
2024-01-14 22:23:11 +01:00
Rika Ichinose
e4a0b1adb4
Use ERMS in all eligible cases, again.
...
Namely, when Move.count > NtThreshold but move distance is too short. 8310b169b7
messed with the logic and made this case fall back to a regular loop instead of more preferable ERMS.
2024-01-11 21:51:44 +00:00
Michaël Van Canneyt
c2383fc207
* Correct casing. Fixes #40589
2024-01-10 09:43:51 +01:00
Pierre Muller
2c622e2fe6
* rtl/macos/dos.pp: Remove unused unixutil in _USES clause of rtl/macos/dos.pp source.
...
* rtl/macos/Makefile.fpc: Update dependency list DOS_DEPS: remove unixutil and add missing macostp.
* rtl/macos/Makefile: Regenerate.
2024-01-09 11:42:18 +01:00
Karoly Balogh
6ef3aef5f2
m68k-sinclairql: regenerated Makefile
2024-01-08 02:22:15 +01:00
Karoly Balogh
21156bc5d3
m68k-sinclairql: fixed the installation of many units that are otherwise built
2024-01-08 02:22:15 +01:00
Karoly Balogh
a1863d8dc8
m68k-sinclairql: also build the various softfpu flavors for the QL
2024-01-08 02:22:15 +01:00
Karoly Balogh
be4e5f240c
m68k-sinclairql: make heaptrc compile for the QL
2024-01-08 02:22:15 +01:00
Karoly Balogh
3b7a347169
m68k-human68k: regenerated Makefile
2024-01-08 02:22:15 +01:00
Karoly Balogh
919b556049
m68k-human68k: fix installation of sysconts and heaptrc units
2024-01-08 02:22:15 +01:00
Pierre Muller
3edd92dab1
Examinc OPT and CROSSOPT instead of FPCOPT in [prerules] to check if syscall unit needs objpas dependency
2024-01-07 23:23:49 +01:00
Sven/Sarah Barth
170c05592b
* ensure that the legacy method table has the correct alignment on platforms that require it (e.g. SPARC64)
2024-01-07 18:09:51 +01:00
Pierre Muller
9dc75c3005
Avoid double declaration of seterrno
2024-01-07 14:40:04 +01:00
Pierre Muller
b1e1a107d3
Fix compilation of syscall unit for i386-beos target
2024-01-07 14:13:03 +01:00
Rika Ichinose
35345fe145
Fix FillQWord_SSE2 stack usage.
2024-01-06 21:18:56 +00:00
Michaël Van Canneyt
29f2f12496
* Some code cleanup in Extract* functions. Fixes issue #40587
2024-01-06 21:42:03 +01:00
Karoly Balogh
0bb6ab24a2
m68k-atari: regenerated Makefile
2024-01-06 19:36:50 +01:00
Karoly Balogh
2ec9f59b38
m68k-atari: fix installation of sysconts and heaptrc units
2024-01-06 19:36:50 +01:00
Pierre Muller
f510e6f59b
Use GetProcAddress to set GetFinalPathNameByHandle function pointer
2024-01-06 17:54:21 +01:00
Pierre Muller
37ffd4051a
Add dependency on objpas unit for syscall unit compiled with -dFPC_USE_LIBC
2024-01-06 17:06:51 +01:00
Pierre Muller
7c9cf75418
Fix syscall unit compilation for i386-linux using -dFPC_USE_LIBC
2024-01-06 17:06:51 +01:00
Pierre Muller
2cb7e44a1b
Fix compilation of syscall unit for Linux with -dFPC_USE_LIBC option
2024-01-05 17:46:49 +01:00
Sven/Sarah Barth
c11772deca
* ensure that the SysCall unit is also usable when FPC_USE_LIBC is defined
2024-01-04 22:26:15 +01:00
Michaël Van Canneyt
a224f8ded7
* Extended RTTI Type info routines and data structures
2024-01-02 07:09:23 +01:00
Michaël Van Canneyt
50d72bb559
* Define RTTI visibilities
2024-01-02 07:09:23 +01:00
Michaël Van Canneyt
c39e51485c
* Avoid range error in comparisons
2024-01-02 07:09:20 +01:00
Sven/Sarah Barth
30bf8047aa
* ensure that the field and method tables are always accessed with the default alignment
2024-01-02 07:09:20 +01:00
Sven/Sarah Barth
7eea850726
* 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
2024-01-02 07:09:19 +01:00
Sven/Sarah Barth
c74441323a
+ add descriptive comment regarding the TVmtField* types
2024-01-02 07:09:19 +01:00
Rika Ichinose
9d8b801e4c
Improve i386 fpc_shortstr_to_shortstr(), fpc_shortstr_compare(), and add fpc_shortstr_compare_equal().
2024-01-01 21:12:52 +00:00
Rika Ichinose
fca0ace070
Improve shortstring Pos() and generic fpc_shortstr_compare().
2024-01-01 21:12:52 +00:00
Rika Ichinose
0d5f7fa66b
Increase non-temporal i386 & x64 Fill* thresholds to 4 Mb.
2024-01-01 18:33:33 +00:00
Rika Ichinose
b7d32e4933
ERMSB-aware Fill* for i386.
2024-01-01 18:33:33 +00:00
Rika Ichinose
8310b169b7
Move ERMS branch into a separate function instead of runtime checks of fast_large_repmovstosb.
2023-12-31 09:54:09 +00:00
Rika Ichinose
f14aced9c5
Attempt to ERMS backward i386 ‘Move’s.
2023-12-31 09:54:09 +00:00
marcoonthegit
95dce3c5a8
*
2023-12-28 19:43:34 +01:00
Karoly Balogh
65234c674a
human68k: less fail in regenerating a Makefile
2023-12-23 16:05:32 +01:00
Karoly Balogh
7c3e792bc1
human68k: regenerated Makefile after the previous commit
2023-12-23 15:36:51 +01:00
Karoly Balogh
c38280ef3e
human68k: added a totally untested DOS unit to the RTL
2023-12-23 15:36:51 +01:00
Michaël Van Canneyt
ed000e6cd7
* Fix wrong TimeStampToMSecs result on 32-bit. Fixes issue #40522
2023-12-22 11:32:57 +01:00
Michaël Van Canneyt
29e2277d98
* Add CreateAnonymousThread with anonymous procedure
2023-12-18 16:53:14 +01:00
marcoonthegit
d91847f39c
* typo fix in previous commit relating to #40558
2023-12-14 09:59:04 +01:00
marcoonthegit
59883da0a0
* fix for drive existence in windows app modus, closes #40558
2023-12-14 09:37:42 +01:00
Rika Ichinose
ecc56d7e68
Attempt to save push/pop ebx on small non-GPR moves.
2023-12-10 13:26:39 +00:00