Commit Graph

7646 Commits

Author SHA1 Message Date
Sven/Sarah Barth
98a25439c3 + add a test that checks for correct working of the legacy method table 2024-01-07 18:09:51 +01:00
florian
94a56ba3d5 + test from Rika for merge request 566 2024-01-06 22:18:30 +01:00
Michaël Van Canneyt
a98462835e * Extended RTTI tests 2024-01-02 07:24:31 +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
ad61db2ff5 * allow a nested function that calls itself can be converted to a function reference
+ added test
2023-12-30 14:47:38 +01:00
Sven/Sarah Barth
74833bda09 * split the two error cases of tanonfunc25 into two different tests 2023-12-30 13:58:09 +01:00
Sven/Sarah Barth
787454d5b2 * correctly handle managed function results when converting a global or nested function to a function reference
+ added test
2023-12-29 20:55:37 +01:00
Jonas Maebe
958f30f192 webtbs/tw10641.pp: skip for Darwin (it does not support these relocations) 2023-12-04 22:52:39 +01:00
Jonas Maebe
24fcd05e8c LLVM: only round currency values when storing them back to memory
Resolves #40550
2023-12-04 22:52:39 +01:00
Karoly Balogh
679f2f75b3 human68k: regenerated Makefiles 2023-11-30 23:43:27 +00:00
Jonas Maebe
2db4cae7aa nested procvars: support assignments when switch not active
Support assigning one nested procvar to another even when the nestedprocvars
modeswitch is not active. This can happen when the type was declared in a
different unit that was compiled with this modeswitch, or in internally
generated wrapper code (which uses "pure" objfpc mode)
2023-11-25 22:35:55 +01:00
Rika Ichinose
a55da71b23 Add tests for IndexQWord, and shorten tindex.pp. 2023-11-18 21:54:05 +00:00
Jonas Maebe
340d389e20 cpptcl1.o: recompiled with -fno-exceptions
As identified by @modersohn, resolves #40501
2023-11-16 23:03:13 +01:00
J. Gareth "Curious Kit" Moreton
cc3f4508fd * a64: New CG tests for evaluating correct EON instructions 2023-11-08 21:07:00 +00:00
Sven/Sarah Barth
3f1d62af8e * fix #40504: always provide the global enum symbol for anonymous enum types (e.g. as part of a set)
+ added test
2023-11-07 20:33:55 +01:00
Sven/Sarah Barth
68668c649e * fix #40500: do a for-in on a string variable using low(strvar) to high(strvar) so that zero based strings are handled correctly
+ added test
2023-11-07 20:28:15 +01:00
Jonas Maebe
0ca260e08c LLVM: fix currency parameters passed on the stack on x86-64
Resolves #40496
2023-11-05 11:30:19 +01:00
florian
de69f1d858 * moved files to appropriate location 2023-11-01 10:09:40 +01:00
Rika Ichinose
dba8138175 Refactor promotional features of StrUtils. 2023-11-01 09:02:27 +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
Rika Ichinose
e00ab51185 On i386 and x86_64, add cpu.CPUID — high-level wrapper to CPUID instruction, and cpu.CPUBrandString — convenience for CPUID leaves 80000002, 80000003, and 80000004. 2023-10-31 21:20:45 +03:00
Michaël Van Canneyt
9f3a50315b * Enable function references and anonymous functions in Delphi mode 2023-10-31 08:42:28 +01:00
J. Gareth "Curious Kit" Moreton
5e2f088a5b * "blea" test will now display the CPU name (can be disabled by removing {$DEFINE DETECTCPU}) 2023-10-29 10:26:52 +00:00
J. Gareth "Curious Kit" Moreton
a353d7c65b * New LEA bench test 2023-10-29 10:26:52 +00:00
Rika Ichinose
9382070454 Refactor and fix a bug in Boyer-Moore. 2023-10-28 06:56:15 +00:00
J. Gareth "Curious Kit" Moreton
286c823e27 * Tests for i40474 and i40475 (BIC issue on AArch64 and incorrect shifter/extender mnemonics respectively) 2023-10-22 13:13:58 +00:00
J. Gareth "Curious Kit" Moreton
6b569d0ada * ARM: New test to evaluate ADR encoding error 2023-10-22 12:04:05 +00:00
Sven/Sarah Barth
287ef8e79a * fix #40410: allow specialization of a procdef also inside exception handlers + added test 2023-10-20 19:54:05 +02:00
Sven/Sarah Barth
f88ee7b2d8 * fix #40451: load the assembly symbol into a separate operand so that an offset already contained in oper isn't discarded + added test 2023-10-20 19:54:04 +02:00
Pierre Muller
8c620daf33 Remove readln and add NORUN marker for tw40453 test 2023-10-15 11:22:05 +00:00
florian
94cb1c3a49 * correctly name nested enum type debug symbols, resolves #40462 2023-10-10 23:16:31 +02:00
Pierre Muller
ad637e8f09 Fix range error in tstruth2bu.pp test 2023-10-10 16:33:44 +00:00
florian
a3f221e189 * allow set type to be a generic parameter, resolves #40453 2023-10-06 21:40:25 +02:00
Michaël Van Canneyt
ab4db7f475 * Fix OnChange being fired twice when adding an object. Fixes issue 40261 2023-10-02 22:17:59 +02:00
Frederic Kehrein
ba55932929 Fixing trying to consume ID for anonymous switch field 2023-09-28 22:42:49 +00:00
florian
803a6fea24 * throw an error if instructions which needs an operand size is used with one operand being a reference without size 2023-09-16 23:25:31 +02:00
Jonas Maebe
decbac8e8b Issue #40392; replaced test with correct one 2023-09-14 21:28:30 +02:00
Jonas Maebe
c96641f901 LLVM: fix double init/fini of local managed variables accessed from nested functions
resolves #40392
2023-09-14 15:38:21 +02: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
Jonas Maebe
bcf77c70fd default parameter values: fix crash
Fix crash when declaring default parameter values while current_procinfo
is not yet valid

resolves #40413
2023-09-11 21:35:07 +02:00
Pierre Muller
64a7bc13d6 Try several ports before failing 2023-09-10 11:11:35 +00:00
Sven/Sarah Barth
3b455c1cf2 * fix #40390: implement support for handling parameter names (including __SELF and __HIGH(<identifier>)) that resolve directly to registers
+ added tests
2023-09-08 17:30:32 +02:00
Sven/Sarah Barth
7f290c27ed * fix name of test 2023-09-08 16:11:13 +02:00
Sven/Sarah Barth
2df57e117b * fix #40381: also check for hints when parsing the parameters of a routine (including open array parameters) or the result type of a function
+ added tests
2023-09-08 15:54:08 +02:00
Sven/Sarah Barth
8fa439e64d + add some tests for hint directives in context of arrays (both with the element and the index) that check that the hint is indeed generated 2023-09-08 15:23:55 +02:00
Sven/Sarah Barth
98fc58b229 + add a test that check for correct functionality of all the SwapEndian() overloads 2023-09-08 15:02:51 +02:00
Pierre Muller
0210254b2d Fix wrong index error 2023-09-07 22:54: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
1c4151d82e Remake AdjustLineBreaks.
This version is correct and supposedly better in other ways (except for a bit of clarity maybe).
2023-08-29 20:08:03 +00:00
florian
15e7dd3d9f * patch and test by Rika: Redirect StrUtils.RPos to StrUtils.RPosEx, fix a bit, improve a bit, resolves #40394 2023-08-27 22:33:00 +02:00