Commit Graph

71229 Commits

Author SHA1 Message Date
Sven/Sarah Barth
4aed151833 * 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) 2024-12-29 18:42:15 +01:00
florian
e30ca27914 * RiscV: write also nopic directive 2024-12-29 18:38:27 +01:00
Sven/Sarah Barth
de8d54cfef * reset oo_is_forward object option for external classes after parsing the parent classes 2024-12-29 17:38:30 +01:00
florian
64e87c87bc * apply OptPass1OP to SLT/SLTU as well 2024-12-28 23:38:22 +01:00
Sven/Sarah Barth
3b7d9956ca * fix #40653: don't allow the use of a class during its declaration as parent for a nested class (Delphi compatible)
+ added test
2024-12-27 16:32:06 +01:00
Sven/Sarah Barth
a2826343bb - remove unnecessary subclassing inside TCustomAVLTreeMap<> 2024-12-27 16:32:06 +01:00
Sven/Sarah Barth
dedc018beb * when parsing generic parameter types allow the use of generics that are part of the current specialization stack (this can be the case if a generic is used inside itself as a type parameter for a specialization)
+ added tests
2024-12-27 16:32:06 +01:00
Sven/Sarah Barth
9b63123bf0 + add utility function to check whether a generic belongs to the currently parsed generic even if it's further up in the specialization stack 2024-12-27 16:32:06 +01:00
Sven/Sarah Barth
8f81b213dc * keep track of the current generic def in the specialization state 2024-12-27 16:32:06 +01:00
Sven/Sarah Barth
db83f9c696 * keep track of the current specialization state of the current module 2024-12-27 16:32:06 +01:00
Sven/Sarah Barth
5d65194777 * TList<>.Pack() with method pointer parameter already passes Default(T) to the check function, so use R instead of Default(T) in the Pack() overload without method pointer 2024-12-27 16:32:06 +01:00
florian
a7dab71da1 * compiled with clang-1205.0.22.9 2024-12-26 18:53:00 +01:00
Sven/Sarah Barth
79ff74ac44 * fix #41007: only unlink typesyms from their typedefs when releasing an unused implicit specialization if the typesym was created for the implicit specialization
+ added test
2024-12-26 18:08:09 +01:00
Sven/Sarah Barth
32b3477fe2 * fix #41063: don't add classrefdefs or objectdefs to the WPOInfo if they are declared locally (e.g. capturer instances)
+ added test
2024-12-26 18:08:09 +01:00
Sven/Sarah Barth
291d2e911a + add test for fixed #40011 2024-12-26 18:08:09 +01:00
florian
b7608b045b * RiscV: push_addr_param unified 2024-12-26 16:49:43 +01:00
Sven/Sarah Barth
9de0025394 * fix #41074: adjust conversion level of class/interface to pointer and class to interface conversions so that sub class to class conversions take precedence
+ added tests
2024-12-26 15:03:14 +01:00
Sven/Sarah Barth
310afcd783 * fix #41075: don't allow @<anonfunc>
+ added tests
2024-12-26 12:48:44 +01:00
florian
9ba3b12eaa * RiscV: unify push_addr_param 2024-12-25 23:33:11 +01:00
florian
b4a83e29a4 * fixes RiscV32 building 2024-12-25 22:48:40 +01:00
Sven/Sarah Barth
aa0ccd8b59 * fix #41072: proc_to_procvar_equal_internal() might be passed a procvar in case of "procvar := @<anon func>", reject that as incompatible
+ added test
2024-12-25 22:30:30 +01:00
florian
065a81b72c + apply OptPass1OP to LA as well 2024-12-25 18:35:46 +01:00
florian
64ba751ef1 * make use of LA pseudo-instruction 2024-12-25 18:35:46 +01:00
florian
57da25581e + write .option pic directive if needed 2024-12-25 18:35:46 +01:00
florian
e7ae57b0cd * skip test on RiscV64 2024-12-25 18:35:46 +01:00
Michaël Van Canneyt
d169225b8e * Add MSG_NOSIGNAL and MSG_WAITFORONE. Fixes issue #41073 2024-12-25 16:34:14 +01:00
florian
8d0bdf2f16 + RiscV: vector registers 2024-12-25 10:34:46 +01:00
florian
af233b8ef8 * RiscV: floating point registers are saved only for hard float ABIs 2024-12-25 10:16:39 +01:00
florian
2da48488d7 * RiscV: emit an error if fpu_fd is used on a cpu without f and d extensions 2024-12-24 16:38:31 +01:00
florian
0c749505ef * fpu type must be fpu_soft if the cpu is rv32ima 2024-12-24 16:38:31 +01:00
florian
cdce37b8be + SMALL_TEST define for slow CPUs/soft float 2024-12-24 16:38:30 +01:00
florian
faae36afa1 * formatting 2024-12-24 16:38:30 +01:00
Michaël Van Canneyt
7245902660 * Correctly set FDeclaredProperties length 2024-12-24 16:19:36 +01:00
Rika Ichinose
9dfbc38a50 Don’t use explicit Move in Extract<T> and Swap<T>. 2024-12-23 21:06:22 +00:00
Michaël Van Canneyt
a6e7e3e743 * Order of parent/child methods is now same as in delphi documentation 2024-12-23 19:47:19 +01:00
Michaël Van Canneyt
774e96f8a9 * Fixes after re-running test 2024-12-23 19:42:26 +01:00
Michaël Van Canneyt
8834c109fa * Extend error message SErrInvokeArgInvalidType 2024-12-23 19:21:32 +01:00
Michaël Van Canneyt
1f19edef00 * optimization of TRttiInstanceType.ResolveExtendedDeclaredProperties 2024-12-23 18:02:25 +01:00
Michaël Van Canneyt
e552165b7a * GetHasExtendedInfo returns false in TRttiMethod 2024-12-23 17:59:53 +01:00
Michaël Van Canneyt
2070a45217 * GetDataSize is 0 for empty TValue 2024-12-23 17:56:52 +01:00
Michaël Van Canneyt
4afc656ac5 * SMall optimization in TRttiInstanceMethod.GetParameters 2024-12-23 17:54:38 +01:00
Michaël Van Canneyt
b447ab211f * Small change in indexed property .ToString 2024-12-23 17:45:17 +01:00
Michaël Van Canneyt
dfd8f5c62b * TValue.Asstring for double 2024-12-23 17:45:17 +01:00
florian
c70e82bea6 * libraries must be marked with %norun 2024-12-23 16:11:45 +01:00
florian
553a1b968d * formatting
+ test for issue #41066 which was already resolved previously
2024-12-23 16:11:03 +01:00
florian
d147488133 * partly revert 8cd6606970, resolves #41052
(cherry picked from commit 854d4e6f4a5b53040160f8921d0089167f6b00be)
2024-12-23 14:27:48 +01:00
florian
24faf6e0f1 * proper naming
- remove readln
2024-12-23 10:55:06 +01:00
Rika Ichinose
f1050aeb73 Simplify dynarr.inc. 2024-12-22 21:41:31 +00:00
florian
49aa141703 * major parts of the RiscV paramgr unified, improves code generation and less failures in RiscV32 regression tests 2024-12-22 22:37:16 +01:00
florian
8023fffd3c * cosmetics 2024-12-21 19:48:33 +01:00