florian
64319dc019
* PopCount takes care only of the bit pattern, so take the uvalue to avoid an internal error, resolves #40190
2023-03-17 22:30:36 +01:00
Sven/Sarah Barth
6aab856213
+ add test for already fixed #37380
2023-03-15 23:39:59 +01:00
Sven/Sarah Barth
c1ecfc323a
* ensure that a procvar (especially a "REFERENCE TO") begins either with FUNCTION or PROCEDURE
...
+ added test
2023-03-15 23:39:59 +01:00
florian
f0ac02cb2e
* patch by Rika: Remove wrong paranoia (and add correct one (and shorten in general (and fix a bug in))) fpc_dynarray_setlength, resolves #40193
2023-03-12 22:15:55 +01:00
Sven/Sarah Barth
d6d693696e
+ add test for fixed #40077
2023-03-06 23:29:04 +01:00
Sven/Sarah Barth
4823ca7114
* fix #40074 : adjust Generics.Defaults to make use of the new ConstParamIsRef<> utility function to correctly determine how a generic binary parameter needs to be compared
2023-03-06 23:24:36 +01:00
florian
99b01f6634
* second mul might get called with a zero operand if the other has a side effect,
...
handle this correctly in ti386addnode.second_mul64bit, resolves #40182
2023-03-06 23:19:34 +01:00
Sergey Larin
62c24b3756
Added test to check WideChar const to UTF8String const conversion
2023-02-24 22:59:39 +00:00
J. Gareth "Curious Kit" Moreton
090e4fea96
* New test for i40122
2023-02-19 20:22:49 +00:00
florian
811c683775
* set rangedef of dyn. arrays correctly, resolves #40149
2023-02-15 22:14:55 +01:00
Jinyang He
783bbb66f9
Update Makefiles
2023-02-05 19:18:48 +00:00
Jinyang He
176462c39a
add loongarch64 tests support
2023-02-05 19:18:48 +00:00
florian
a9f9996dc8
+ support leap seconds in TryEncodeTime, resolves #40121
2023-01-30 22:40:15 +01:00
Rika Ichinose
b38d13577f
Make Utf8CodepointLen adhere to the Unicode standard somewhat more and know all of the Unicode 15.0 combining characters.
2023-01-30 13:51:31 +00:00
florian
09b435cdab
* transform a/a only into 1 if fastmath is on
2023-01-29 13:49:33 +01:00
florian
8ef0f59025
* mark constant symbols used in preprocessor expressions as used, resolves #40108
2023-01-24 22:36:26 +01:00
florian
ec28b7586c
+ support procvar[] in tp/mac procvar mode if the procvar returns an array type
2023-01-22 16:24:29 +01:00
florian
55deefbab5
* do not crash on illegal with statement, resolves #40118
2023-01-18 23:03:28 +01:00
florian
5598ffc210
* x86_64: warn only on negative offsets if rsp is involed, second part of #40113
...
+ tests
2023-01-17 23:09:42 +01:00
florian
8b08486fa1
* do not warn on lea e/rsp with negative address offset, part of #40113
...
+ tests
2023-01-15 23:06:05 +01:00
J. Gareth "Curious Kit" Moreton
b997e41366
* New tests that evaluate CMOVcc using a reference even if IfRefSafe returns False because the previous condition reads it
2023-01-10 22:23:58 +00:00
J. Gareth "Curious Kit" Moreton
891723111c
* New test for extended CMOVcc optimisations
2023-01-10 22:23:58 +00:00
florian
899bdc0016
* first approach to fix tfrldexp on i386-win32
2023-01-06 23:03:40 +01:00
florian
cfbdf90ab0
* patch by Rika to optimize ArcCos, resolves #40078
2023-01-02 18:56:41 +01:00
Sven/Sarah Barth
e1288897f3
* fix #40031 : with support for inline specializations it no longer makes sense to make the parameter symtable of a procedure variable type readonly as there *are* defs that are added to it
...
+ add adjusted test
2022-12-30 23:32:00 +01:00
Sven/Sarah Barth
4510945465
* fix #40062 : ensure that Self is only added to anonymous functions when dealing with method pointers
...
+ added test
2022-12-30 23:32:00 +01:00
Sven/Sarah Barth
5d7e3ca240
* fix #40060 : ensure that Self is not added for anonymous functions that are part of a static class method
...
+ added test
2022-12-30 23:32:00 +01:00
Sven/Sarah Barth
4c6338207f
* fix #40061 : the Self of types that aren't implicit pointers (recods, TP-style objects, primitive types (for helpers)) needs to be stored as a Pointer in the Capturer so that modifications are correctly visible
...
+ added tests
2022-12-30 23:32:00 +01:00
florian
7affd78904
* do not throw an internal error on typed constants with wrong element count, resolves #40066
2022-12-30 21:53:04 +01:00
florian
69eebe4c0c
+ patch by Rika to implement missing TPointF methods, resolves #40057
...
+ test by Rika
2022-12-29 15:20:49 +01:00
florian
571e0c39cc
* increase time out
2022-12-24 17:25:42 +01:00
florian
3203eac6d3
+ missing -O4 option added
2022-12-24 17:07:27 +01:00
florian
28b4189a9a
* mess cleaned up
2022-12-23 18:16:52 +01:00
florian
30e0df384d
* second part of #40041 fixed
...
+ tests
2022-12-22 22:41:39 +01:00
florian
e0fef23d77
* properly transform a+const1-const2 into a+const1+(-const2), resolves #40041
2022-12-21 22:34:46 +01:00
Michaël Van Canneyt
68cdd7073f
* Patch from Ondrej to implement SameArray
2022-12-19 09:56:50 +01:00
Ondrej Pokorny
d1f999100b
Add SetToArray and ArrayToSet functions for more general RTTI Set handling
2022-12-18 13:32:15 +00:00
florian
7917cbed22
+ (negative) test for cmov/j/set without condition
2022-12-12 22:56:41 +01:00
florian
c92056fcac
* patches by Rika: Fix a bug in LdExp(extended), and test Math.Frexp/Ldexp implementations instead of own, resolves #40030
2022-12-11 20:04:46 +01:00
florian
bf2911a562
+ test for #40025 by Rika, resolves #40025
2022-12-10 21:35:07 +01:00
Pierre Muller
96c63c4443
Fix fcmove instruction for external assemblers
2022-12-10 19:59:05 +00:00
Pierre Muller
a592636d9c
Use CMOV and FCMOV with a condition, the parser should reject without a condition
2022-12-10 17:06:35 +00:00
Jonas Maebe
851af5033f
Darwin/AArch64: adjust alignment info of custom-aligned paralocs
...
Resolves #40019
2022-12-06 21:46:26 +01:00
J. Gareth "Curious Kit" Moreton
f54917d600
* New test to catch stack overflow in compiler ( #40010 )
2022-12-04 05:52:08 +00:00
Sven/Sarah Barth
ebb4de1441
* mark test as NORUN
2022-12-03 19:41:34 +01:00
Sven/Sarah Barth
7a34677b2a
* as long as the type passed into a TypeInfo() is not an undefined or error def the resulting value will always be constant at compile time, so it can be compared to another then no matter if typenode or not
...
+ added tests
2022-12-02 17:47:15 +01:00
Pierre Muller
b202fb2b0a
Fix two tests for ELFV2 powerpc64 ABI
2022-12-01 00:05:05 +00:00
florian
b835005941
* proper naming for test, resolves #40013
2022-11-30 22:17:58 +01:00
florian
96d4bd19ac
* use bzhi only (if at all) for in_and_assign_x_y and not other in_*_x_y operations, resolves #40016
2022-11-30 22:16:21 +01:00
J. Gareth "Curious Kit" Moreton
5704626762
* New test to catch issue identified in #40003
2022-11-28 21:43:50 +00:00
florian
247423400f
* create muln with create instead of create_internal when converting "n - n mod const)" so pass1 works properly, resolves #40004
2022-11-24 22:43:27 +01:00
florian
e7fda48327
+ missing halt instructions
2022-11-23 19:01:32 +01:00
Pierre Muller
d38c24fee7
Add test for avx2 support using cpu unit function avx2support
2022-11-22 22:48:35 +01:00
florian
0ba4cee279
* convert n-n mod const into n div const*const, resolves #39615
2022-11-22 22:41:58 +01:00
J. Gareth "Curious Kit" Moreton
735f297f5b
* Range check fixes to BZHI tests
2022-11-21 14:44:39 +00:00
florian
3b43bd027c
* calculate life info for if nodes correctly if the then branch is empty, resolves #39992
2022-11-13 22:28:08 +01:00
Pierre Muller
0f30af07e5
Fix test to succeed for big endian mips
2022-11-12 13:16:51 +00:00
florian
3e6d4bf1cc
* new cpu feature tests
2022-11-09 23:09:07 +01:00
florian
12aa48602b
+ CMOVSupport function
2022-11-08 21:15:11 +01:00
Sven/Sarah Barth
9e3483fbeb
* fix #39977 : allow a capturer to access any method independant of visibility as the visibility checks are supposed to have been done before the captured symbol was converted
...
+ added test
2022-11-06 22:01:49 +01:00
Sven/Sarah Barth
b051e7667c
* fix #39978 : ensure that Self is captured when a method of the current class is captured into a function reference
...
+ added test
2022-11-06 22:01:49 +01:00
Sven/Sarah Barth
d221f42a57
* ensure that the correct overload is picked for function reference parameters
...
+ added tests
2022-11-06 22:01:49 +01:00
Sven/Sarah Barth
a714e2ff35
* fix #39981 : retrieve the symbol that returns the desired procdef/procvardef not maybe the Self or something else as we need that symbol to differentiate the procdefs
...
+ added test
2022-11-06 22:01:48 +01:00
Rika Ichinose
7243befdb7
Better TBits.
2022-11-06 20:55:38 +00:00
J. Gareth "Curious Kit" Moreton
0dbf40a24c
* Added new tests for BZHI optimisations
2022-11-06 15:42:09 +00:00
Ondrej Pokorny
05c45486e8
fcl-image/pasjpeg: handle Exif orientation flag automatically
2022-11-02 09:25:20 +00:00
florian
3f7bf0fd70
* stop generation of typed array constants if the size does not match, resolves #39980
2022-11-01 21:16:31 +01:00
florian
0eee70ac81
* fix FindUnitSymtable for exception symtables, resolves #24801 and #39974
...
* more consistent naming of exceptsymtable enumeration symbol
2022-10-31 20:19:10 +01:00
Pierre Muller
e1b3c03daf
Add test for mips code generation bug
2022-10-29 21:34:00 +01:00
Sven/Sarah Barth
e050a019a2
* fix #29859 : ensure that it's correctly passed down into generate_specialization whether a unit name was provided for the specialization and if so search the generic only in that unit
...
+ added tests
2022-10-28 17:40:53 +02:00
florian
c75bb80b14
* more debug messages
...
* better exit codes for test
2022-10-26 23:20:18 +02:00
Pierre Muller
49ddf159b2
Fix internalerror generated with riscv32 compiler.
...
Fix
Compiling ./fcl-passrc/src/pscanner.pp
pscanner.pp(2512,40) Fatal: Internal error 2006010801
error generated for riscv32-linux target after commit #c83e6c34
by correcting expectloc for riscv32 for 64-bit comparisons.
Add a small test.
2022-10-25 18:42:14 +02:00
florian
3fa77a4f62
* fix life information propagation for while loops, resolves #39971
...
* warnings/errors fixed which are caused by the new life information propagation
+ test
2022-10-24 22:13:43 +02:00
J. Gareth "Curious Kit" Moreton
fa76baa3d4
* New test to evaluate i39918
2022-10-22 13:07:16 +00:00
florian
8f269d4540
* check for proper exception type
2022-10-22 15:05:52 +02:00
florian
2b48afe151
* check if optinfo is assigned before using it, resolves #39913
2022-10-21 21:14:39 +02:00
J. Gareth "Curious Kit" Moreton
6b77017cb9
* x86: Added two new tests for i39922
2022-10-18 20:47:42 +00:00
Jonas Maebe
0758aa1143
FPU exception mask: generlised system unit interface
2022-10-17 19:43:01 +00:00
florian
e457cdad8a
* patch by avk959 to solve infinite loop in FindMatchesBoyerMoore*, resolves #39885 and #39709
...
+ tests
2022-10-17 21:14:32 +02:00
florian
5670a7543c
* properly reset nf_write/nf_modify flags for min/max inline nodes, needed by dead store optimization, resolves #39958
...
* factored out nutils.node_reset_pass1_write
2022-10-16 22:51:50 +02:00
florian
65ff03f30a
+ test for #39955
2022-10-15 13:59:35 +02:00
florian
1c86a4bbeb
* if a pointer_to_array type conversion is applied to a variable, it is not written, resolves #39957
2022-10-14 23:12:18 +02:00
Pierre Muller
d217a459aa
Fix bug report #39952 .
...
* compiler/aggas.pas: Avoid use of .long for 64bit constant
for targets that automatically insert alignments.
+ tests/webtbs/tw39952.pp: New test from bug report 39952.
2022-10-12 21:28:16 +01:00
florian
f0c0d8a033
+ test for #22809 which is meanwhile resolved
2022-10-12 21:56:30 +02:00
florian
989895c82f
* patch by Bart B: FormatFloat correctly outputs NaN now, resolves #32868
...
+ test
2022-10-11 22:11:33 +02:00
Sven/Sarah Barth
188cac3bc6
* enable OpenStrings by default in mode Delphi
...
+ added test
2022-10-08 13:52:34 +02:00
Sven/Sarah Barth
6cbbf9c52a
* $P/$OpenStrings is supposed to be a local switch, so change that accordingly
...
+ added tests
2022-10-08 13:52:32 +02:00
florian
9f293df425
* export DynArrayAssign, resolves #39897
2022-10-06 22:56:38 +02:00
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