florian
ad7cc0e69d
* handle <dyn.array>+[] (and swapped) correctly, resolves #39919
2022-10-05 22:48:21 +02:00
marcoonthegit
2291100bbd
* fix and test for bug #39884 solving daysbetween when zero date is crossed.
2022-10-05 20:46:18 +02:00
florian
d8cd4d283d
* removed wrong program name
2022-10-04 22:02:59 +02:00
florian
2396b36c21
* nil =/<> dyn. array is a valid expression, so isbinaryoperatoroverloadable needs to take care of it, resolves #39933
2022-10-03 10:26:09 +02:00
florian
444fe092da
* propertly check equality with the for-counter when propagating constants, resolves #39915
2022-09-24 20:39:43 +02:00
florian
960c154f48
* properly named
2022-09-22 23:00:34 +02:00
Sven/Sarah Barth
4f9acc10f0
* fix #39898 : when a loadnode is captured ensure that its nf_load_procvar flag is applied to the subscript node as well
...
+ added tests
2022-09-20 00:01:49 +02:00
florian
af1194de4d
* end of an include file works like a new line with regard to single line (//) comments, resolves #39912
2022-09-19 23:03:36 +02:00
Sven/Sarah Barth
c8fee69345
* fix #39907 : only load system class types from units that are marked as a System unit
...
+ added test
2022-09-18 15:41:33 +02:00
florian
168016b865
* patch by Rika: Use linear file list in FInput.TInputFileManager instead of linked, resolves #39880
2022-09-17 22:46:57 +02:00
Sven/Sarah Barth
e21186cac0
* fix #39902 : in case of mode ObjFPC function pointers passed to parameters need to be checked for the correct procdef as well
...
+ added adjusted/extended test
2022-09-16 16:20:42 +02:00
Sven/Sarah Barth
13fb30c52e
* fix #39902 : correctly handle assignment of procvars to properties with a field write accessor
...
+ added adjusted/extended test
2022-09-16 16:20:42 +02:00
Jonas Maebe
e746cf96da
Overload selection: call procvars if result is compatible with parameter
...
Previously we only autmatically called procvars without parameters in TP/Delphi
modes if their result type was equal to the parameter type to which they were
passed. Resolves #39748 .
2022-09-16 11:21:05 +02:00
Sven/Sarah Barth
62a57bf82e
* fix #39903 : correctly parse anonymous function references in records (and classes/objects)
...
+ added test
2022-09-15 22:57:05 +02:00
J. Gareth "Curious Kit" Moreton
2931b43000
* New test for #39713
2022-08-31 18:25:11 +00:00
Sven/Sarah Barth
a93942cd27
* correctly convert a single WideChar to a PChar constant with the correct code page
...
+ added test
2022-08-28 21:53:44 +02:00
florian
889c164f78
+ new test
2022-08-28 21:49:38 +02:00
florian
8e9a019fb7
* moved tests to proper location
2022-08-28 21:44:33 +02:00
florian
0440749562
+ test for #39873
2022-08-28 21:29:52 +02:00
Sven/Sarah Barth
e5957b1ef0
* fix #39875 : when a WideString constant is used to initialize a PChar the constant needs to be converted to the current code page
...
+ added test
2022-08-26 18:05:13 +02:00
Sven/Sarah Barth
5135b586cb
* fix #39857 : don't trash symbols marked as vo_is_internal
...
+ added test
2022-08-26 17:42:22 +02:00
Sven/Sarah Barth
8595c927a8
* fix #39876 : correctly Read(Str) enum types which have a size smaller than 4 Byte
...
+ added tests
2022-08-26 17:16:29 +02:00
florian
85c7368759
* handle also simulated flags in tmipselnotnode.second_boolean, resolves #39877
2022-08-24 21:16:23 +02:00
florian
2670eb1ce7
* improved test as proposed by Rika
2022-08-23 21:27:44 +02:00
florian
4f7dffadbb
* extended test
2022-08-22 21:33:52 +02:00
florian
5af087cfc3
* experimental test for #39722 , no sure if it will work this way on all platforms
2022-08-21 23:03:38 +02:00
florian
d3d4de7818
* test for #39834 , previous commits resolve #39834
2022-08-20 18:11:24 +02:00
Sven/Sarah Barth
61debb1559
* fix #39869 : correctly check whether the recorded token stream still needs to be parsed (the replay depth of the scanner needs to be *larger* than what it was before starting the playback)
...
+ added test
2022-08-18 23:09:01 +02:00
florian
9e14dee1c3
* fixed Math.Tanh as proposed by Paolo Valle, resolves #39867
2022-08-17 20:56:43 +02:00
marcoonthegit
533cd82922
* applied patch from Alexey for closes #39704
...
* reviewed checks at start of function to match Delphi in rangecheck errors and other exits
* test for the above.
2022-08-17 18:38:02 +02:00
Ondrej Pokorny
55629aeb19
do not publish enums with jumps
2022-08-16 20:47:44 +02:00
florian
cc66eb27ab
* patch by Rika: More numerical stability for Math, resolves #39863
2022-08-14 22:26:09 +02:00
Sven/Sarah Barth
27c1bb3bea
* an objectdef also requires an init for its members if a member (or a member of one of the parents) has a complex initialization
...
+ added test
2022-08-14 15:42:32 +02:00
florian
8028a769f4
* ensure that the executable path used in the test is absolute
2022-08-12 22:12:11 +02:00
Sven/Sarah Barth
5e7330448d
* fix #39858 : correctly keep track of symbols that need to be captured into the capturer
...
+ added test
2022-08-12 17:44:39 +02:00
Sven/Sarah Barth
35958a9b6b
* fix #39860 : even if the block type is not correct for the specialization of a generic routine continue to specialize it to not trigger e.g. an internal error
...
+ added tests
2022-08-12 14:46:56 +02:00
florian
5afd809e88
+ handle LOC_FLAGS in thlcgobj.location_force_mem, resolves #39292
2022-08-08 23:14:56 +02:00
J. Gareth "Curious Kit" Moreton
8ba76f7d0a
* New test to catch i39851
2022-07-31 19:45:23 +00:00
Nikolay Nikolov
8c9a07a3e8
+ added test for wasmglobals, where the globals are declared in the implementation section of a unit
2022-07-31 20:12:11 +03:00
Nikolay Nikolov
6d23d22d50
+ added wasm dir to test dirs
2022-07-31 20:04:43 +03:00
Nikolay Nikolov
6d3da83611
+ added test for wasm globals
2022-07-31 19:54:34 +03:00
florian
6c47f8f4d7
* do not warn on anonymous functions without captured variables about being not used, resolves #39853
2022-07-29 21:46:48 +02:00
Sven/Sarah Barth
c122e16beb
* fix #39849 : it's an error when the file (or string) parameter of a Read*/Write* is followed by a ":"
...
+ added test
2022-07-29 17:34:55 +02:00
Jonas Maebe
3d6c53ee74
parentfpstruct: explicitly trash before initialising
...
It's an internal sym, but it contains user data. Together with the previous
commit resolves #39845
2022-07-26 22:36:13 +02:00
florian
a16f35dcb1
+ support RV32E Extension
2022-07-17 22:14:13 +02:00
florian
399e699b72
* tests for merge request 244
2022-07-16 22:13:21 +02:00
Sven/Sarah Barth
8d90cd3e64
* fix #39826 : correctly handle function references that are part of generics/specializations, but are not generics/specializations themselves
...
+ added test
2022-07-15 16:32:02 +02:00
florian
d27c3b4b79
+ test for #33559
2022-07-13 22:53:37 +02:00
florian
e25594c48e
* correctly truncate rtti symbol names of enumeration types, resolves #39829
2022-07-11 22:07:57 +02:00
florian
1d32a575e7
* as correctly pointed out by Bart B, -gw instead of -g should be used in the test for #39816
2022-07-06 19:50:07 +02:00
florian
e28238da9b
* handle absolute on strings correctly for dwarf debug info, resolves #39816
2022-07-05 23:04:57 +02:00
florian
a9db747eb9
+ test for #39786
2022-07-04 22:52:05 +02:00
florian
a2a2a6d79e
* naming fixed, it is a test for #39785
2022-07-03 16:09:09 +02:00
florian
c5a0d16c58
* experimental test for #39758
2022-07-02 23:36:14 +02:00
Michaël Van Canneyt
ff3f183eb2
* Patch from Bart to remove unneeded test
2022-07-02 13:05:00 +02:00
florian
ceda27ae25
* allow type parameters in variant parts of records as we do not now
...
what type is used during specialization, resolves #39805
2022-06-28 22:45:17 +02:00
Michaël Van Canneyt
ecb4a0abca
* Restore display of exception type. fix issue #39811
2022-06-25 14:49:44 +02:00
Michaël Van Canneyt
b2ad1d3efd
* Patch from Bart. Fix for issue #39797
2022-06-25 14:33:33 +02:00
Michaël Van Canneyt
53623d7184
* Fix test regressions
2022-06-25 12:48:10 +02:00
florian
3ef7fedfec
+ forgotten test file added
2022-06-24 22:34:02 +02:00
florian
8eb2cea349
* do not throw an internal error if slice is used on dyn. array paramters, resolves #39806
2022-06-23 23:11:18 +02:00
J. Gareth "Curious Kit" Moreton
2d8b10a5d8
* Improved TESTALL.BAT file for JVM tests
2022-06-23 19:12:14 +00:00
Sven/Sarah Barth
b2a5334a75
* fix #39795 : when extracting make_prettystring it was forgotten to also append the const part of the name to the specialize name
2022-06-22 09:44:21 +02:00
Nikolay Nikolov
4d6e3b4e1a
* Don't call secondpass(left) in twasmtypeconvnode.second_int_to_real, this fixes bug #39735 .
2022-06-21 23:59:25 +03:00
florian
8c5bc91855
+ tests for convutils unit by Bart B, resolves #39793
2022-06-20 22:43:16 +02:00
florian
98ec81896e
* do not throw messages on potentially uninitialized internal symbols, resolves #39744
2022-06-15 23:30:33 +02:00
florian
a05aa25aad
* Risc-V: allow also register aliases in register modification lists after asm blocks, last part to resolve #39738
2022-06-03 22:54:18 +02:00
Sven/Sarah Barth
a27bc236a0
* fix #39742 : when assigning a function to a function reference it's not the function itself that needs to be checked to be captureable, but instead what it captures (this applies for both the non-generic and the generic case)
...
+ added tests
2022-05-31 23:16:41 +02:00
Sven/Sarah Barth
0874521a78
+ add tests to ensure that the assignment of nested function variables to function references is forbidden
2022-05-31 22:50:14 +02:00
Sven/Sarah Barth
883cc6d697
+ add tests that ensure that the overload selection works correctly when functions, methods or nested functions are assigned when overloads for function references are involved as well
2022-05-31 22:50:14 +02:00
Sven/Sarah Barth
2372a06926
* fix #39740 : consider a conversion of a procedure or procedure variable to a function reference as a bit more expensive than otherwise
...
+ added test
2022-05-31 22:50:14 +02:00
Sven/Sarah Barth
7bb1b12b4f
+ add a mode Delphi equivalent for tanonfunc56 to check whether overload selection works correctly
2022-05-31 22:50:13 +02:00
Sven/Sarah Barth
5a680f0148
* fix #39745 : the conversion from ordinals to pointer types in mode Delphi is not allowed for a void type (happens when using a typecast to convert a method without parameters to a function reference)
...
+ added test
2022-05-30 23:05:45 +02:00
florian
390084d59e
* tests fixed
2022-05-29 10:37:24 +02:00
florian
b810afa193
* test also cmem unit intensively
2022-05-27 23:33:20 +02:00
Nikolay Nikolov
c9ed14f87b
+ enable the 64-bit SAR instruction on the WebAssembly target
2022-05-27 22:56:05 +03:00
Nikolay Nikolov
b6aaa06f83
+ enable the ROL/ROR instructions for WebAssembly
2022-05-27 22:46:32 +03:00
Sven/Sarah Barth
f73fc7d566
* fix #39736 : ensure that the capturer object and any converted function reference interface are considered used
...
+ added test
2022-05-27 07:24:46 +02:00
Pierre Muller
2c9776ac6b
Remove %OS by %TARGET, as spotted by Gareth
2022-05-26 21:38:31 +00:00
Sven/Sarah Barth
39b7b07ebb
+ add tests for function references, anonymous functions and C-blocks
2022-05-26 21:44:25 +02:00
Sven/Sarah Barth
6a9b4a1b13
+ apply patch by Blaise.ru: allow initialisation of method pointers with class methods (when class types are
...
known at compile time)
* adjust error message when a method pointer isn't suitable
+ add tests
2022-05-26 21:42:55 +02:00
Sven/Sarah Barth
bc4eb00a7a
* apply patch by Blaise.ru: proper code generation for assigning class non-static methods, accessed via a class reference type, to method pointers
...
+ added test
2022-05-26 21:42:55 +02:00
Sven/Sarah Barth
6e7a82440e
* apply patch by Blaise.ru: avoid internal error when assigning class methods, accessed via a class reference type, to incompatible procvars
...
+ added tests
2022-05-26 21:42:55 +02:00
Sven/Sarah Barth
a8cf67d73b
* apply patch by Blaise.ru: reject assignments of instance methods, accessed via a type, to method pointers
...
+ add tests
2022-05-26 21:42:54 +02:00
Sven/Sarah Barth
7f9428eed5
* add cblock directive so that the test fails for the correct reason
2022-05-26 21:42:51 +02:00
Nikolay Nikolov
8c562995d7
* regenerate makefiles with latest fpcmake
2022-05-24 14:01:59 +03:00
Nikolay Nikolov
0f4340e659
* fix regressions after previous patch by correctly parsing output, which does not contain '##WASI-EXITCODE:'
2022-05-24 10:30:20 +03:00
Nikolay Nikolov
a8b789d183
* patch from Pierre for working around the exitcode <= 125 limitation in wasmtime
2022-05-24 10:15:44 +03:00
Jonas Maebe
0d74752b1f
Fix %cpu type as spotted by Alexey Torgashin
2022-05-15 18:01:48 +02:00
Jonas Maebe
9b11509dd0
Text for merge request #226
2022-05-15 10:57:43 +02:00
Pierre Muller
8184287ec0
Fix for variables longer than 127 chars
2022-05-10 23:18:01 +02:00
florian
084a4a0563
* made checking for supported targets more fool proof
2022-05-09 22:45:01 +02:00
J. Gareth "Curious Kit" Moreton
3e11b0e870
* New tests for aligned records
2022-05-09 20:03:44 +00:00
J. Gareth "Curious Kit" Moreton
fb14bc8459
* New webtbs/tw39646.pp test to evaluate fix for
...
i39646
2022-05-07 20:53:35 +00:00
florian
c4e85e5d2c
* made test compilable if no floating point type support is available
2022-05-06 23:25:36 +02:00
florian
29881ee675
* for now, IO is not supported on AVR
2022-05-03 19:39:09 +02:00
florian
f5742f21a0
* do not run test, it is about successful compilation and runtime on weak CPUs is high
2022-05-01 22:58:24 +02:00
florian
6d6774bcc4
* write number of iterations
2022-05-01 22:42:57 +02:00
florian
9540dc8989
* make test compiling on avr
2022-04-29 23:06:17 +02:00
florian
3fac399683
* more precise test as suggested here: 876ae56158 (note_921869640)
2022-04-24 14:41:06 +02:00
florian
876ae56158
* patch by Rika: fix for ... in iterator for TMap and TSet, resolves #39354
2022-04-23 21:51:26 +02:00
Sven/Sarah Barth
74f9523806
* in case of an implicit specialization ensure that the symbol of the generic is indeed considered as used once the final implicit specialization has been picked
...
+ added test
2022-04-23 16:29:13 +02:00
Sven/Sarah Barth
97c16401f7
+ add test for already fixed #39677
2022-04-22 10:40:58 +02:00
Sven/Sarah Barth
22a4cc66ec
* fix #39675 : consider the symbols for unnamed parameters as used so that there won't be unnecessary hints about them
...
+ added test
2022-04-22 10:40:58 +02:00
Sven/Sarah Barth
76753438ed
* fix #39681 : also handle the result type of a specialized procvar when checking for a possible implicit specialization
...
+ added test
2022-04-22 10:40:58 +02:00
Sven/Sarah Barth
c0fa45dc92
* a function can't be used to implicitely specialize a specialized procedure variable parameter and vice versa
...
+ added test
2022-04-22 10:40:58 +02:00
Sven/Sarah Barth
a5f3040da5
* the index of the generic type parameter is not the same index of the paras list
...
+ added test
2022-04-22 10:40:58 +02:00
Sven/Sarah Barth
66bac7c415
* fix #39679 and fix #39680 : for implicit specializations a parameter used in a call might also inherit in some depth from a specialization used as parameter type
...
+ added tests
2022-04-22 10:40:58 +02:00
Sven/Sarah Barth
4053d59a2c
* fix #39673 : also resolve the dummy symbol in case this isn't a reuse of the current generic's name
...
+ added test
2022-04-22 10:40:58 +02:00
florian
559fcdf736
* forbid cyclic pointer definitions, resolves #39634
2022-04-21 20:03:05 +02:00
Sven/Sarah Barth
90844c2027
* fix #35261 : apply slightly adjusted changes by Ryan Joseph to implement support for implicit generic function specializations
...
The main adjustments were as follows:
- fixing coding style and identation
- fixing some typos
- using a better name for the property in tcallcandidates which holds the symbols created for anonymous parameter values
2022-04-20 18:59:31 +02:00
Sven/Sarah Barth
d32134dd1a
* fix #39664 : ensure that the 8- and 16-bit signed overloads of IntToHex return the correct number of digits
...
+ added test
2022-04-19 14:24:00 +02:00
florian
43b4b34395
* disallow offsetof trick for types involving implicit dereferences, resolves #39667 partially
2022-04-14 17:06:15 +02:00
florian
62f21ae60d
+ recurse into multiple subscription nodes when calculating contant @... expressions, resolves #39665
2022-04-13 21:32:06 +02:00
Pierre Muller
a939c0ccd4
Add several tests for 127 max ID length, related to bug report #39661
2022-04-13 15:15:18 +00:00
florian
4c5fc2f958
* patch by Rika: avoid that capacity of TQueue grows to much for certain
...
usage patterns, resolves #39662
2022-04-12 17:36:42 +02:00
Sven/Sarah Barth
815734c47a
* fix #32034 and fix #39656 : in a for-in-loop with an array constructor enforce the type of the loop variable for the elements
...
+ added tests
2022-04-08 17:40:36 +02:00
florian
54dccaaad1
* do not crash in case of too many $push directives, resolves #39652
2022-04-07 22:51:30 +02:00
florian
6bbefcae9e
* check more cpuid flags in the cpu units
2022-04-04 22:55:05 +02:00
florian
81d7e28a87
+ test for #39627 , together with the last merge request it resolves #39627
2022-04-03 15:08:24 +02:00
florian
ff64dacf25
+ slowcpu define
2022-04-03 15:01:36 +02:00
Jonas Maebe
9813eb9048
AArch64 asm reader: add support for fpcmp(e) conditions
...
Resolves #39643
2022-04-03 13:40:21 +02:00
Jonas Maebe
b1f85792d7
Symbolic constants: don't range check on in use in typed constants
...
Same as 3da54dcf9f
, but this type when used in type constant definitions
like record fiels
2022-04-03 11:20:10 +02:00
Jonas Maebe
3da54dcf9f
Symbolic constants: don't range check on use
...
If these constants are defined with an explicit type, they are already
truncated/checked at that point. If we range check them again on use, we
may get errors because at that point there is no explicit type cast
any more.
2022-04-02 13:26:44 +02:00
florian
4718029fe0
* do not throw an error if syscall is used with a syntax not applicable for the current
...
target, resolves #39640
2022-03-30 23:07:34 +02:00
ccrause
405523ace2
Added test cases for AVR shift by compile time constant.
2022-03-30 20:48:52 +00:00
inoussa
27ed2808dc
Unicode 14, Unicode Collation Algorithm 14, CLDR 40 support.
2022-03-15 10:19:15 +00:00
Pierre Muller
2f28c5596f
Regenerate all Makefile's to fix problem on x86_64 linux
2022-03-07 23:46:15 +00:00
Pierre Muller
ad2ac98858
Update Makefile's
2022-03-07 22:35:29 +00:00
florian
ae89261008
* prevent that a absolute symbol references itself, resolves #39604
2022-03-06 22:01:56 +01:00
florian
39627cbdfb
+ AVX512VBMISupport and AVX512VBMI2Support
2022-03-05 20:35:25 +01:00
florian
ac53225817
* test for already resolved issue #38874
2022-03-03 21:24:43 +01:00
florian
2b66f60a88
* do not throw an internal error in case of a misplaced string, resolves #39609
2022-03-02 23:09:53 +01:00
florian
9e3f647333
* var, type, threadvar, const sections require also in classes etc. at least one declaration, resolves #39599
2022-02-25 21:56:52 +01:00
Sven/Sarah Barth
92eb260521
+ support for generic forward declarations fixes #39582 , so add a test for it
2022-02-18 17:54:36 +01:00
Sven/Sarah Barth
c14c3ec98f
+ support for generic forward declarations fixes #39581 , so add a test for it
2022-02-18 17:54:36 +01:00
Sven/Sarah Barth
2a5023508a
+ add support for forward declarations of generic classes and interfaces (any implicit pointer type really); fixes #34128
2022-02-18 17:54:23 +01:00
Sven/Sarah Barth
b5ce98fec7
+ add C/C++ object files for aarch64-win64 compiled with LLVM 13.0.0
2022-02-18 15:23:00 +01:00
florian
67fedc6b5b
* handle frac(+/-Inf or Nan) correctly in the software implementation, resolves #39584
2022-02-17 22:00:27 +01:00
florian
9ad2bdcecd
+ patch by Bart B: TBucketList threw access violations after Clear, resolves #39565
...
+ test
2022-02-16 23:00:02 +01:00
Pierre Muller
4da4c96349
Regenerate Makefile's with mips gcc fixes and new enabled mips64-linux target
2022-02-15 15:45:15 +00:00
florian
680a5b94ff
+ test for last commit ( 44094dba2f
)
2022-02-14 22:54:36 +01:00
florian
34630c2ef9
* properly set types for currency divisions, resolves #38717
2022-02-13 22:47:38 +01:00
Nikolay Nikolov
21593942a1
* regenerate all makefiles with the latest fpcmake
2022-02-13 15:26:54 +02:00
Jonas Maebe
b97c8bdf55
testobj3: fix test
...
Use RTL StringRefCount instead of local GetRefCount that only supports some
platforms and depends on the internal layout of ansistring headers
2022-02-12 15:25:19 +01:00
Nikolay Nikolov
2d5f0fbde0
Merge remote-tracking branch 'origin/main' into unicodekvm
2022-02-12 09:28:38 +02:00
Nikolay Nikolov
2c0f10d988
* when adding WebAssembly object info, traverse through current_module.used_units,
...
as well as the usedunits global. This resolves #39543
2022-02-12 08:32:48 +02:00
florian
79cf1dd9cf
+ store also ecx and edx after cpuid call with eax=7
...
+ test VNNI and BIGALG instructions
2022-02-07 21:22:16 +01:00
Nikolay Nikolov
39daa64949
Merge remote-tracking branch 'origin/main' into unicodekvm
2022-02-06 16:35:22 +02:00
Pierre Muller
7a444281e8
Retry incase of thread initialization failure
2022-01-31 22:40:09 +01:00
Florian Klämpfl
f36a665879
* test for fixed bug to play safe
2022-01-30 22:35:14 +01:00
J. Gareth "Curious Kit" Moreton
9b4033fa80
Fast mod
2022-01-30 08:22:39 +00:00
florian
f21f7f0f50
* handle result type of unsigned ordinal operations in ISO/Extpas mode similiar to TP, solves
...
#37875
2022-01-28 22:48:50 +01:00
Nikolay Nikolov
9579759f01
+ added wasi to the list of targets without thread support
2022-01-26 15:39:24 +02:00
Pierre Muller
140fe74efb
Add possibility to pass jvm target compilation parameters and clean up if no problem is detected
2022-01-24 16:35:33 +00:00
Florian Klämpfl
773babd45d
+ test for already fixed bug so this avoids that is is reintroduced
2022-01-23 20:11:12 +01:00
Sven/Sarah Barth
5ce96de0f2
* ensure that an expression that involves an overloaded generic in mode Delphi isn't handled as a specialization if it shouldn't be
...
+ added tests
2022-01-22 20:27:01 +01:00
florian
2e8321e0fa
+ routines to test for AVX512VNNI and AVX512BITALG support
2022-01-21 18:23:04 +01:00
florian
cecb24344c
Merge branch 'main' into val_range_check
2022-01-19 22:20:24 +01:00
florian
63d8282f8f
* do not use sysutils anymore
2022-01-19 22:03:24 +01:00
florian
bd104270ae
* clean up
2022-01-19 22:02:58 +01:00
florian
07cd469ade
Merge branch 'main' into val_range_check
...
# Conflicts:
# rtl/inc/sstrings.inc
2022-01-19 21:30:58 +01:00
florian
713074ded5
* test does not need to use sysutils anymore
2022-01-19 21:25:00 +01:00
Nikolay Nikolov
b407b67ca1
* regenerate all makefiles with latest fpcmake
2022-01-19 07:08:32 +02:00
florian
e19b45a71b
* tests fixed after last commit
2022-01-15 22:30:25 +01:00
florian
894c49ca93
* enable brenchmark to be compiled with -Sh
2022-01-12 20:33:59 +01:00
florian
11b069fa61
+ test
2022-01-11 22:10:21 +01:00
florian
fc3b635013
* patch by Bart B to fix the value of Code for unsigned types if the input is negative, resolves #39523
2022-01-11 21:29:56 +01:00
florian
beecbf1581
Merge branch 'val_sint' into main
2022-01-10 22:11:01 +01:00
Sven/Sarah Barth
b5e57a63f5
+ add test for already fixed #22252
2022-01-09 12:29:08 +01:00
florian
62f1771121
* fix test for improved fpc_Val_SInt_ShortStr
2022-01-08 14:54:18 +01:00
Pierre Muller
3b8b549eaa
Fix compilation of the two tests for jvm-android target
2022-01-07 22:56:13 +00:00
florian
d29a482cd1
* fixes for fpc_Val_SInt_ShortStr by Bart B
...
+ new test for fpc_Val_SInt_ShortStr
+ benchmark
2022-01-07 19:19:55 +01:00
J. Gareth "Curious Kit" Moreton
fd54c958c9
New POPCNT tests to evaluate new optimisations
2022-01-06 20:57:48 +00:00
florian
89f9ebc7b7
* throw an error if raise is called in a noreturn subroutine outside of any exception frame, resolves #39514
2022-01-06 21:13:19 +01:00
Sven/Sarah Barth
52ed79c7f3
* fix #39506 : add assignment operator overloads for all string types so that assignments of constant strings can be handled correctly
...
+ added adjusted/extended test (the test isn't enabled by default however as it requires libffi on most platforms)
2022-01-04 23:41:38 +01:00
Florian Klämpfl
4aebfe97a9
+ x86: ADXSupport
...
+ x86: RDSEEDSupport
2022-01-03 22:51:00 +01:00
florian
983fbff871
* proper range checking for TryStrToDWord, should resolve all issues in #39406
2022-01-02 21:46:14 +01:00
florian
435f3a9fe2
* allow a range of Low(Longint) to High(DWord) in TryStrToInt, see also issue #39406
...
* moved test
2022-01-02 21:33:01 +01:00
florian
2a93e65511
* seperator => separator
2022-01-02 13:12:33 +01:00
florian
d2447026de
+ modeswitch UNDERSCOREISSEPERATOR, active by default in delphi modes:
...
support _ as seperator in numbers, it is ignored while reading them, resolves #39504
2022-01-01 23:28:36 +01:00
Florian Klämpfl
25eab57a58
* allow %... for binary constants in delphi mode, resolves #39503
2021-12-29 15:37:53 +01:00
Florian Klämpfl
dde8f54ee7
+ LZCNTSupport
...
+ test extended
2021-12-28 17:05:56 +01:00
Nikolay Nikolov
efe08183be
Merge commit 'f289f2694ab837b414aa131a0514c56fee4950bc' into unicodekvm
2021-12-26 05:25:41 +02:00
florian
781b2d0a80
* patch by Rika: second part of #39496 , resolves #30496
...
+ extended test
2021-12-25 20:01:32 +01:00
florian
159201d054
* activate missing test
2021-12-19 22:57:33 +01:00
florian
c6874df5c8
* better error recovery, resolves #39485
2021-12-16 22:27:38 +01:00
florian
2cf68f6dbf
* files moved as strutils is now in rtl-objpas
2021-12-10 22:05:57 +01:00
Florian Klämpfl
60c26a11ef
* patch by Bart B. to improve DelSpace1, resolves #39465
...
+ test
2021-12-09 22:52:01 +01:00
Sven Barth
69bfff046a
+ add a test for converting a 64-bit Boolean (either QWordBool or Boolean64) to a 32-bit signed integer (this problematic case was discovered after e65b822a
on PowerPC
2021-12-05 15:11:24 +01:00
Pierre Muller
271ba59cf1
All Makefile's regenerated
2021-11-25 22:13:32 +00:00
florian
65ef6f1f37
* regenerated Makefiles
2021-11-24 22:50:37 +01:00
J. Gareth "Curious Kit" Moreton
55d5b11deb
Converted tabs to spaces in toverflow.inc for consistency
2021-11-18 20:31:49 +00:00
J. Gareth "Curious Kit" Moreton
29ea731b2f
Added two new overflow tests
2021-11-17 20:18:57 +00:00
Pierre Muller
52cc8df079
Add some delay and a maximum attempt number in GenerateTempDir to avoid getting oversized execution log files
2021-11-12 12:08:20 +01:00
florian
03ce23246f
* patch by Don Siders: Fixes spelling, grammar errors in source and compiler messages, resolves #39434
2021-11-10 19:16:14 +01:00
J. Gareth "Curious Kit" Moreton
99d04fb5b4
Added missing inc file
2021-11-08 21:46:12 +00:00
J. Gareth "Curious Kit" Moreton
671c674d65
Expanding division to 64-bit and tests
2021-11-08 21:46:12 +00:00
florian
292be9029e
* when converting a*a into sqr(a), set the result type correctly
...
* removefloatupcasts takes care of cs_excessprecision, resolves #39012
2021-11-07 21:54:25 +01:00
florian
67e7dc0194
* consecutive naming
2021-11-07 20:03:09 +01:00
florian
d708bef92f
+ Aarch64: read register sets with ranges properly
...
+ tests
2021-11-07 20:02:29 +01:00
florian
dcb1fcd9b8
+ support $lgeacyifend directive, resolves #37676
2021-11-01 23:24:42 +01:00
Jonas Maebe
15865e7602
Record variant discriminators: check types
2021-10-31 21:13:35 +01:00
Jonas Maebe
4426d0da7a
Fixed variant discriminator types
2021-10-31 21:13:35 +01:00
florian
0f14bd45b1
* run fcl-image tests with regression tests
2021-10-29 23:06:26 +02:00
florian
95ad8f1694
* correctly read the region label in $region directives, resolves #39395
2021-10-28 21:13:01 +02:00
florian
2ee6a81cff
* extended test to cover last commit
2021-10-20 22:33:53 +02:00
florian
3eefff75df
* pass a randseed which is known to be problematic
2021-10-20 20:04:32 +02:00
florian
7e73e0dd23
+ support reading of .p2align with op code and/or max. bytes in the gas assembler reader
...
+ test
2021-10-18 22:12:27 +02:00
florian
08050086b9
* keep type when removing "1*", resolves #38840
2021-10-17 22:23:49 +02:00
florian
ee10850a57
* patch by Sergey Larin: Reducing and aligning the size of TAnsiRec, TUnicodeRec for CPU64, resolves #38018 :
...
For CPU64, the size of record TAnsiRec and TUnicodeRec is 16 bytes instead of 24.
Which is very good also because of the alignment. when allocating memory, the address
of the first character of the string will be aligned on the 16-byte boundary.
At the same time, the useless Dummy field, which is needed in CPU64 for exactly alignment, has been removed.
For CPU32 (and CPU16), the record size has not changed, so procedures such as
fpc_AnsiStr_Decr_Ref, implemented in assembler (see i386, arm), remained working correctly.
* tests adapted
2021-10-17 11:13:29 +02:00
florian
5c75ef30ce
* test for #37785 which is resolved meanwhile
2021-10-16 20:44:52 +02:00
Nikolay Nikolov
44f862fb4e
+ added test for SysUtils.GetLocalTime
2021-10-13 03:49:54 +03:00
florian
00d4a6889d
* add no internal flag when folding constants in taddnode.simplify, resolves #39308
2021-10-12 22:59:45 +02:00
florian
ca9384fd6c
* patch by Dean Mustakino to avoid generation of debug info for generics, resolves #38827
...
+ test
2021-10-11 18:45:41 +02:00
florian
a4672fbd1c
o based on a patch by Rika, resolves #39401 :
...
* use Base64 (62=_, 63=$) encoded FNV hash (instead of CR-32) to shorted identifiers
* renamed fpccrc to fpchash
+ test
2021-10-10 10:09:22 +02:00
florian
bff09e8e9e
+ CPU units: check for SHA support
2021-10-09 16:23:11 +02:00
florian
6c7e6191f6
+ support of SHA extension in the internal assembler
2021-10-09 15:44:46 +02:00
florian
91cf1774dd
* replace MT random generator by Xoshiro128**, resolves #38237
2021-10-05 22:20:22 +02:00
Jonas Maebe
c745ae4836
AArch64 popt: don't replace registers with X/WZR
...
Most arithmetic/logica instructions don't support X/WZR as operand (since
you should use movk with the calculated constant in that case)
Resolves #39372
2021-10-04 20:58:05 +02:00
Yuriy Sydorov
e9d318e7e2
* x86: Fixed update of used registers in the CMOV optimizations.
...
This fixes a bug reported by Martin Frb in fpc-devel which is triggered
by the recently provided test code in FPC 3.2.2 x86_64, but is hidden
in trunk by other pipeline peephole optimizations.
2021-10-04 18:10:34 +03:00
Jonas Maebe
ab01b0ebd7
Typed constants: no internalerror on failure
...
Don't check whether the expression queue is empty in the destructor in case
there was an error. Also improved error messages (constant expression instead
of variable expression expected).
Resolves #39393
2021-10-03 21:46:23 +02:00
Jonas Maebe
3fb0fab410
Fix bitpacking 62/63 bit fields on 64 bit targets
...
As reported on the lazarus forum:
* https://forum.lazarus.freepascal.org/index.php?topic=56341.new
* https://forum.lazarus.freepascal.org/index.php/topic,56339.msg418608/topicseen.html
Also optimized nextpowerof2 in the compiler
2021-10-03 14:00:50 +02:00
Nikolay Nikolov
799cd957e6
+ added WASI .o files for the tests for linking with C
2021-10-03 04:11:51 +03:00
Nikolay Nikolov
9aefda1e6a
* bug fix in test taddbool.pp - it was testing longbool conversion to boolean
...
twice, and not testing wordbool conversion to boolean at all
2021-10-01 04:56:36 +03:00
J. Gareth "Kit" Moreton
1f19b11398
x86_64: Fix to tw8573 overflow bug under -Cg option
2021-09-29 18:32:31 +00:00
Pierre Muller
5446d53156
Update to use gitlab
2021-09-29 17:23:28 +02:00
Pierre Muller
a7ad65f884
Fix use of svnversion if ../.git does not exist
2021-09-25 17:15:35 +02:00
Jonas Maebe
fcb646bc3b
obcpas: fix categories implementing protocols
...
Allocate the ImplementedInterfaces array for them and save to/load from ppu
Solves #39375
2021-09-25 16:15:45 +02:00
florian
5abfe21f39
+ apply unary minus optimizations also to /
...
* test extended
2021-09-23 22:44:16 +02:00
florian
69d5d648a9
+ more unary minus optimizations
...
* test extended
2021-09-21 23:09:33 +02:00
florian
3e760b33c7
+ more unary minus optimizations
...
* test extended
2021-09-20 22:31:16 +02:00
florian
8cb92fd49a
* simplify real expressions involving unary minus
...
+ test
2021-09-19 23:08:32 +02:00
florian
e2624fdaaa
* fix test
2021-09-14 22:01:39 +02:00
florian
5065e4ba50
* fix code for ARM FPA, just in case ...
2021-09-13 22:55:44 +02:00
florian
9bd785c06b
* fix handling of -0.0 in sse/avx code, resolves #39357
2021-09-13 22:47:26 +02:00
Yuriy Sydorov
c30ce7108e
* Do not run the tzlib1 test. It is not intended for this.
2021-09-11 20:40:36 +03:00
Yuriy Sydorov
80c63fae30
* Explicitly specify DefaultRTLFileSystemCodePage for the test in order
...
to be independent from the current system code page.
2021-09-11 20:35:50 +03:00
Yuriy Sydorov
64812bdc60
* Modified the test to run properly on non-UTF8 systems.
2021-09-11 20:11:40 +03:00
Yuriy Sydorov
daa05f19cb
* Prevent a crash of the tw2423 test on some versions of Windows.
2021-09-11 19:54:02 +03:00
Yuriy Sydorov
fca357e898
* Disabled running of the sharemem test since fpcmemdll.dll is never built.
2021-09-11 19:54:02 +03:00
Yuriy Sydorov
0567572fae
* Weak externals from DLL are nor supported on Windows.
2021-09-11 19:54:02 +03:00
Yuriy Sydorov
bcaa2c9758
* Explicitly specify CP1252 for registry tests which depends on this CP.
2021-09-11 18:10:52 +03:00
Yuriy Sydorov
16d17de1ff
+ Added a test for a bug fixed in b96057ad
.
2021-09-06 19:01:34 +03:00
florian
677f829732
* tw39323 needs to turn on range check to test what it is supposed to test
2021-09-05 23:12:34 +02:00
florian
a5f6505edc
* fix range checking for zero based strings, resolves #39323
2021-09-05 21:03:31 +02:00
florian
3069d74ecc
* handle constant folding correctly for <pointer>+<ord. constant>+<ord. constant>, resolves #39332
2021-09-01 21:32:27 +02:00
florian
8efae66956
* we cannot do SSA during partial writes to arrays which span multiple registers, resolves #39325
2021-09-01 09:31:50 +02:00
Sven Barth
3ce6cae11d
* fix for #39310 by fixing various small issues in tabstractrecordsymtable.has_single_field:
...
- initialize the returned def to a safe default
- correctly reset the found symbol for each loop
- reset the result when descending into a record
+ added test
2021-09-01 09:31:15 +02:00
Pierre Muller
23bf243acd
Add test for bug report 38973 (already fixed in trunk/main)
2021-09-01 09:29:51 +02:00