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
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
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
e7ae57b0cd
* skip test on RiscV64
2024-12-25 18:35:46 +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
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
florian
493ad0aa73
* compiled by riscv64-linux-gnu-gcc (Ubuntu 13.3.0-6ubuntu2~24.04) 13.3.0
2024-12-20 20:20:39 +01:00
Pierre Muller
81129445c3
Replace tkernel_timespecs by TTimespecArr type to allow compilation with linux RTL using libc
2024-12-20 10:06:17 +00:00
Michaël Van Canneyt
060c06c052
* Test for slice
2024-12-18 21:14:19 +01:00
Michaël Van Canneyt
5632af2afa
* Correctly handle missing extensions for dotted include file names. Fixes issue #41064
2024-12-16 15:12:37 +01:00
Sven/Sarah Barth
5e53c7fd04
+ add test that checks that the Atomic*-intrinsics work correctly inside generics
2024-12-13 22:57:25 +01:00
Sven/Sarah Barth
311c023271
* ensure that any Boolean type can be used for the Succeeded parameter and that there are no unitialized warnings
...
+ added test
2024-12-13 22:57:25 +01:00
Sven/Sarah Barth
6828da9c6c
* fix #41062 : correctly handle atomic intrinsics inside generics
...
+ added test
2024-12-13 22:57:25 +01:00
florian
0265d5d0c9
* test might not be precise enough with fastmath
2024-12-13 22:42:19 +01:00
Sven/Sarah Barth
76a15dbd6c
+ add tests for atomic intrinsics
2024-12-12 22:05:15 +01:00
florian
fbd17b43ac
* test failed only with strength reduction onm so compile with -O3
2024-12-10 22:38:34 +01:00
florian
9d94ccdc38
* set types of start value calculation correctly when doing strength reduction, resolves #41054
2024-12-09 22:30:40 +01:00
Frederic Kehrein
05b73f1523
Postponing building of VMT until inheritance chain is specialized
...
This commit does 3 changes:
1. Introduce new option `oo_inherits_not_specialized` indicating if
somewhere in the inheritance chain of an object there is a non
specialized generic parameter
2. Avoid building the VMT for an object which has a generic parameter in
the inheritance chain (fixes #40983 )
3. When no vmt is build `insert_struct_hidden_paras` usually called as
part of `build_vmt` will be called seperately to add missing
parameters
2024-12-08 17:54:50 +00:00
florian
e471c08cf8
+ SHA512Support
2024-12-07 11:10:34 +01:00
Pierre Muller
3a481d9590
Add explicit -CE option and check that mysqrt returns zero for negative arg
2024-12-03 12:45:53 +00:00
Pierre Muller
564d50ce8e
Check that a normal real division does not generate an exception
2024-12-03 12:09:05 +01:00
florian
04a56e2900
* properly calculate the size of enumeration types having negative elements and a max. value exceeding the upper bound of
...
the elsewhere matching signed type, resolves #41019
2024-11-30 14:43:10 +01:00
florian
3d6710c0e3
* don't see illegal calling conventions for procedure variables, resolves #41041
2024-11-29 21:40:33 +01:00
Michaël Van Canneyt
e1e301dea8
* Add missing methods to thunk class for parent interfaces without RTTI
2024-11-25 11:32:36 +01:00
Michaël Van Canneyt
03f98e749c
* Fix TValue casts, patch by Евгений Савин, fixes issue #41030
2024-11-21 11:51:11 +01:00
florian
4d732b44d4
* correctly calculate the number of labels of a c boolean in case statemnts, resolves #41025
2024-11-20 22:04:58 +01:00
florian
08762ab8f0
* missing part of last commit
2024-11-17 15:03:49 +01:00
florian
c48d8e9708
* write additional info for the tests, might help to identify spurious failures
2024-11-17 14:21:12 +01:00
Sven/Sarah Barth
6ec8441744
* test that SysUtils.Swap<>() doesn't hide System.Swap()
2024-11-17 10:15:44 +01:00
Frederic Kehrein
64c27a86a8
* Adding new generic Extract and Swap function to RTL
...
These allow to move data from one variable to another without triggering
the copy operation. Extract makes use of the newly introduced move
semantic for function results and Swap uses System.Move to not trigger
the copy mechanism.
2024-11-16 22:08:06 +00:00
Frederic Kehrein
ca92c49f8c
* Avoid calling copy operator when moving data from temporary objects
...
When a function returns a managed record, a new temporary object is
created for the result, which is then copied to the real destination.
For managed records with a deep copy implementation, this can create
immense overhead. So instead this introduces a move, which basically
consists of
```pascal
procedure Move(var src, dst);
begin
Finalize(dst); // Finalize existing data
Move(src,dst,sizeof(dst)); // Shallow copy
Initialize(src); // Clear source
```
* nld.pas: use MOVE when assigning the function result from the
temporary return object
* rtl/inc/systemh.pas: Adding new macro to mark new RTTI version with MOVE
operation
* rtl/inc/compproc.inc, rtl/inc/rtti.inc: Adding new move mechanism when
indicated by the compiler.
2024-11-16 22:08:06 +00:00
florian
e4af0fc1e9
* don't mess with boolean and/or operations in mixed short/full evaluated expressions, resolves #41012
2024-11-16 17:27:16 +01:00
Frederic Kehrein
4b92df28cf
Adding static properties to extended RTTI
2024-11-15 12:47:41 +00:00
Michaël Van Canneyt
2d0f8467fa
* Patch from Евгений Савин to implement TValue.Cast for floats. Fixes issue #41011
2024-11-13 23:22:59 +01:00
Michaël Van Canneyt
e9107bbf4f
* Patch from Евгений Савин to fix passing records to invoke. Fixes issue #41006
2024-11-11 11:59:57 +01:00
florian
092ff254f1
+ AtomicIncrement/Decrement overloads
...
* tests extended
2024-11-10 14:56:10 +01:00
florian
fe6dd84d01
+ new tests
2024-11-09 09:51:59 +01:00
Michaël Van Canneyt
f35384ba53
* Attributes for methods test
2024-11-08 12:15:28 +01:00
Frederic Kehrein
6618c0dbf7
Fixing a bug where an empty postfix for enum was allowed
2024-11-07 21:09:37 +00:00
Pierre Muller
7b492b9975
Add DosExitCode to DosError shl 16 to set ExitCode value in utils/dosbox/exitcode.pas program
2024-11-06 22:21:22 +00:00
Pierre Muller
dd6efefdbf
Adapt to dosbox-x
2024-11-06 22:21:22 +00:00
Pierre Muller
3bee7636dd
Add command line in verbose mode
2024-11-06 22:21:22 +00:00