Commit Graph

3894 Commits

Author SHA1 Message Date
Michaël Van Canneyt
10d740298d * Added nothreads unit for fake thread support. Currently only WASI 2024-05-19 16:14:45 +02:00
Pierre Muller
cb6fe28898 Add support for DISABLE_SYSTEMINLINE inside heaptrc unit 2024-05-02 07:56:33 +00:00
Pierre Muller
d1510840d0 Fix compilation of rtl with -dDISABLE_SYSTEMINLINE 2024-05-02 07:47:57 +00:00
florian
a0cae50af6 * rtl part of #35433 2024-05-01 23:15:12 +02:00
Rika Ichinose
b0076a4709 Integers are 16-bit in system, replace with SizeInt. 2024-04-17 20:46:36 +00:00
Rika Ichinose
0fe3633044 Simplify shortstr_concat(_multi). 2024-04-12 19:41:35 +00:00
Rika Ichinose
fc3d71bba3 Check bounds in SetLength(shortstring). 2024-04-10 21:06:14 +03:00
florian
886f91dee3 + tvardata.vuint32, resolvers #40729 2024-04-05 20:29:13 +02:00
Michael Ring
6fadd49fb6 Added missing RP2040 definition in Makefile.rtl to make sure that regenerating of Makefiles does not remove rp2040 unit 2024-03-23 21:25:37 +00:00
Michael Ring
cba5e252d1 Fix missing configuration for namespaces to make rp2040.pp build on main compiler 2024-03-17 09:35:13 +00:00
Pierre Muller
603dd63b39 Fix make variable name error: OBJPAS_DEPS_SPU => OBJPAS_DEPS_CPU 2024-03-11 14:23:25 +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
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
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
b3800d38cb * Handle potential double defintion of INFINITE 2024-02-24 19:52:00 +01:00
Michaël Van Canneyt
e1b2feac33 * Set monitor structures in place 2024-02-24 18:11:23 +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
31b978f3b7 * Add UnicodeFromLocaleChars for Delphi compatibility 2024-02-20 17:09:35 +01:00
Michaël Van Canneyt
30a20cc209 * Add operators to TMethod, for Delphi compatibility 2024-02-20 15:36:18 +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
87a37e70ee * Add EnumModules for Delphi compatibility 2024-02-16 11:15:27 +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
Pierre Muller
2e6a31df8b Add linux dependency on syscall unit for libc on i386 and x86_64 2024-01-29 11:20:09 +00:00
Sven/Sarah Barth
4aeb1ee223 * fix implementation comment 2024-01-22 22:27:33 +01:00
Michaël Van Canneyt
e9c6f1c152 * Delphi-compatible overloads UTF8ToUnicodeString 2024-01-18 09:32:15 +01:00
marcoonthegit
231007ebda * check length of optstring before dereferencing (optstring[1]) it. Fixes #40596 2024-01-17 11:41:16 +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
florian
9bb6a32c62 * avoid wrong warning about FillChar not initializing the output parameter in case count <= 0 2024-01-15 21:54:11 +01:00
Karoly Balogh
be4e5f240c m68k-sinclairql: make heaptrc compile for the QL 2024-01-08 02:22:15 +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
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
Rika Ichinose
fca0ace070 Improve shortstring Pos() and generic fpc_shortstr_compare(). 2024-01-01 21:12:52 +00:00
Rika Ichinose
b7d32e4933 ERMSB-aware Fill* for i386. 2024-01-01 18:33:33 +00:00
Jonas Maebe
49cb7b2564 LLVM: use llvm.dbg.declare instead of llvm.dbg.addr for variable declarations
Even though it's supposedly deprecated, clang also still uses it and without
the declaration ranges of local variables are sometimes cut off
2023-12-06 22:57:16 +01:00
Michaël Van Canneyt
7e4aca384f * Some delphi compatibility issues solved (PtrToNil and TGUID operator) 2023-11-29 14:34:27 +01:00
Michaël Van Canneyt
7bd8ac25d4 * Regen Makefiles with correct defines for some lineinfo units 2023-11-08 18:15:52 +01:00
Michaël Van Canneyt
ebed69e858 * Fix name of lineinfo 2023-11-08 17:12:37 +01:00
Michaël Van Canneyt
ab3b7f8f69 * Do not use namespace prefix for lnfodwarf 2023-11-08 17:08:03 +01:00
Michaël Van Canneyt
2f9c1e8be4 * line info may not use namespaces, referenced in compiler 2023-11-08 17:06:19 +01:00
Rika Ichinose
854d944cfa Faster string concatenations. 2023-11-05 14:59:42 +00:00
Michaël Van Canneyt
2ad272f03f * Correct dependency of (System.)Character, or resulting unit is unusable 2023-11-02 12:10:36 +01:00
Michaël Van Canneyt
038f054bdc * Add varUInt32 alias for delphi compatibility 2023-11-01 21:38:55 +01:00
Michaël Van Canneyt
80d471a9f1 * Add HINST for Delphi compatibility 2023-11-01 21:38:55 +01:00
Rika Ichinose
0d3d4918b3 Don’t allow generic fpc_pchar_length to arbitrarily over-read. 2023-11-01 20:04:40 +00:00
Rika Ichinose
8d1d763a1a Don’t use local shortstring in generic fpc_pchar_to_shortstr, move directly to the destination. 2023-11-01 20:04:40 +00:00
florian
b2a13077c0 * redefine also PPChar and PPPChar depending on the string type mode, resolves #40491 2023-10-31 23:13:22 +01:00
Michaël Van Canneyt
6045b3a6bd * Add Delphi-compatible DisposeOf and friends. 2023-10-30 09:17:01 +01:00
Pierre Muller
b317f47029 Set SYSTEMUNIT variable globally inside inc/Makefile.rtl 2023-10-09 01:02:28 +02:00
Pierre Muller
b9544ad342 Add SYSTEMDIR variable (needed for BSD OSes) 2023-09-29 17:44:34 +02:00
Pierre Muller
a6353fecf0 Add tthread.inc dependency for classes unit using TTHREADINCDIR variable 2023-09-26 23:52:37 +02:00
Pierre Muller
4f055a9254 Add dependency of classes unit on sortbase 2023-09-26 23:23:21 +02:00
Pierre Muller
541ba50269 Revert wrong substitution of classes and sysutils subdirectories inside wildcard calls 2023-09-26 22:48:55 +02:00
Pierre Muller
bb20f8f318 Replace all objpas$(PPUEXT) by $(OBJPASUNIT)$(PPUEXT) in inc/Makefile.rtl 2023-09-26 14:21:36 +02:00
Pierre Muller
b12932c7f8 Handle specific main cwstring.pp source for android OS 2023-09-26 01:02:46 +02:00
Pierre Muller
48ea716826 Set special value for RTLDEFSINCDIR variable
for andrioid and targets using AMIINC variable.
  Add rtldefs.inc dependency for cwstring unit,
with RTLDEFSINCDIR directory.
2023-09-26 01:02:46 +02:00
Pierre Muller
edc92f26ff Handle win16 specific units: wintypes winprocs and win31 for DOTTED 2023-09-26 01:02:44 +02:00
Pierre Muller
c0d8241b5d Handle unixtype unit and introduce PTYESINCDIR variable 2023-09-25 01:02:56 +02:00
Pierre Muller
8e98e35ac2 macosclassic OS does not have unixtype unit 2023-09-25 01:02:55 +02:00
Pierre Muller
b9af293d35 syscall unit is only used when -dFPC_USE_LIBC is not used 2023-09-25 01:02:54 +02:00
Pierre Muller
5001c72510 Add unixtype nit dependency for ctypes unit for Unix OSes 2023-09-25 01:02:54 +02:00
Pierre Muller
07d4779ee5 Add pthread.inc dependency for cthreads unit 2023-09-25 01:02:52 +02:00
Pierre Muller
1ea8e8bda2 Add rtlconst.inc dependency for rtlconsts unit 2023-09-25 01:02:49 +02:00
Pierre Muller
a160b2470b Handle sysctl unit for DOTTED 2023-09-25 01:02:49 +02:00
Pierre Muller
bdfd7a66eb * Adapt initc unit to DOTTED.
* Remove OS specific initc rules.
  * Set default directory for initc main source to
    UNIXINC variable value if is is set.
  * Replace initc references by INITCUNIT variable.
  * Add dpmiexcp dependency for initc on go32v2 system
    by setting INITC_DEPS_OS.
  * Add nwsys.inc dependency for initc on netware system.
2023-09-25 01:02:48 +02:00
Pierre Muller
5f14f4447b Update console unit for DOTTED 2023-09-20 18:05:16 +02:00
Pierre Muller
9a9bbe5740 Handle DOTTED transition for termio unit 2023-09-20 18:05:16 +02:00
Pierre Muller
3c0e3b1a3f Add -Fi option for dynlibs.inc directory to DYNLIBS_OPT in dynlibs unit rule 2023-09-20 13:16:27 +02:00
Pierre Muller
82dec844c3 * Update math unit rules for dotted version
+ Add PROCINC/mathu.inc dependency in generic rule for math unit
  * Remove OS specific rules for math unit
  * Use MATHUNIT variable everywhere
2023-09-20 08:26:06 +02:00
Pierre Muller
9fe073493a * Use linux directory explicitly for fpcylix source location
* Remove android rule for fpcylix unit
  * Replace fpcylix by FPCYLIXUNIT variable
2023-09-20 07:29:58 +02:00
Pierre Muller
31d831d775 Fix CP_UNITS_SRC variable for dotted case 2023-09-19 21:29:36 +00:00
Pierre Muller
5676cf4c1a Fix CP_UNITS variable setting 2023-09-14 11:21:00 +00:00
Pierre Muller
82d40c23e7 Fix EXEINFOUNIT and CP_UNITS variable values or dotted case 2023-09-14 08:55:01 +00:00
Pierre Muller
1d56f9f324 Fix CP_UNITS_SRC variable value 2023-09-13 21:19:42 +00:00
Pierre Muller
ec310eb2f3 Add all codepage unit source files to cpall dependency 2023-09-13 20:06:34 +00:00
Pierre Muller
e77402ecb4 Add missing include files for strings unit dependency list 2023-09-12 21:39:27 +00:00
Pierre Muller
ebc34f3dbb Remove wrong ERRORSUNIT=System.Errors line 2023-09-12 21:39:27 +00:00
Pierre Muller
e2d466f990 Remove duplicated, useless line 2023-09-12 21:39:27 +00:00
Rika Ichinose
324b77f317 Let fpc_dynarray_concat(_multi) reuse the only nonempty input or append to the destination if possible.
Improve fpc_dynarray_delete.
2023-09-12 20:58:50 +00:00
Pierre Muller
16d7424a75 Set UUCHARUNIT variable 2023-09-12 07:24:28 +00:00
Pierre Muller
62fe06ce9e Do not use ISO7185UNIT variable for main source file in ISO7185_DEPS 2023-09-11 22:17:44 +00:00
Pierre Muller
5bbd1c2172 Always set MACPASUNIT variable 2023-09-11 21:50:20 +00:00
Pierre Muller
7b2507456c Set FPINTRESUNIT and OBJPASUNIT variables 2023-09-11 21:31:12 +00:00
florian
ba78551c4f * patch by Rika: improve fpc_*_concat_multi, resolves #40251 2023-09-10 19:27:55 +02:00
florian
7e69f399b3 * patch and test by Rika: fixes self inserts in Insert(x, dynarray) and improves Insert(x, dynarray), resolves #40417 2023-08-29 22:23:22 +02:00
Rika Ichinose
2536041230 Faster genset.inc:fpc_varset_set_range. 2023-08-28 20:16:54 +00:00
Rika Ichinose
1a6e6a1b0b Improve generic large set operations: +, -, *, ><, =, <=, mostly by working in PtrUints. 2023-08-16 17:15:33 +00:00
Pierre Muller
8af6ad9148 Dotted rules for arm-embedded 2023-08-10 00:23:51 +02:00
Pierre Muller
55aff2366b Add WinApi messages unit rules 2023-08-09 00:33:16 +02:00
Pierre Muller
233e3b9963 Use lowercase names for all embedded CPU specific units, as in namespaced/embedded/CPU 2023-08-09 00:33:15 +02:00
Pierre Muller
80aa3cf89c Add -Sg option for the three soft fpu units 2023-08-09 00:33:15 +02:00
Pierre Muller
d0103704a6 Fix sysutils dotted rule for OSes having local included files 2023-08-08 01:06:16 +02:00
Pierre Muller
6b185c041d Always set RTLCONSTSUNIT to rtlconsts, if FPC_DOTTEDUNITS is not defined, as OS specific changes are parsed after 2023-08-07 14:59:14 +00:00
Pierre Muller
2e4f7bcc22 Add objpas unit dependency for unicodedata because of $objfpc mode 2023-08-07 14:59:13 +00:00