Jonas Maebe
9b70c7623d
* initialise local variable to prevent random failures
...
git-svn-id: trunk@42992 -
2019-09-14 07:30:38 +00:00
Jonas Maebe
ce598c15ec
* factored out the conditions under which add nodes need to perform
...
overflow checks
o in particular ensure that cpu-specific overrides don't perform overflow
checks when nf_internal is set
git-svn-id: trunk@42573 -
2019-08-03 12:19:50 +00:00
Jonas Maebe
15532e5277
* disabled low-level hack test for LLVM
...
git-svn-id: trunk@42102 -
2019-05-19 19:20:38 +00:00
svenbarth
b7a716cd81
* correct return a pointer to the list so that List^[x] works as it did before 3.2
...
+ added test
git-svn-id: trunk@41938 -
2019-04-26 08:13:11 +00:00
svenbarth
307ff071e6
* allow any untyped parameter to be passed to a untyped constref parameter
...
+ added test
git-svn-id: trunk@41829 -
2019-04-04 19:31:55 +00:00
svenbarth
9a9c6a3ff4
* fix for Mantis #35150 : correctly convert Int64/QWord values to OleVariant (Delphi compatible)
...
+ added test
git-svn-id: trunk@41571 -
2019-03-03 14:50:09 +00:00
Jonas Maebe
7b313a2c15
* stop searching for methods to implement interfaces in parent classes after
...
encountering a method with the correct name that does not have the
"overload" directive (same logic as when looking for a call candidate,
to avoid errors when using a Pascal-level wrapper to call interface
methods, and Delphi-compatible since it always required "overload" for
overloaded methods)
o also catches calling convention mismatches like in webtbs/tw27349
git-svn-id: trunk@40683 -
2018-12-28 18:25:58 +00:00
Jonas Maebe
c6bb85eae9
* support for compiling the objects unit methods that expect local procedure/
...
function pointers using {$modeswitch nestedprocvars} functionality, activate
this for LLVM and also activate that modeswitch for a test that uses this
o also convert the IDE units to use this functionality
o requires extra typecasts because implicit type conversions from
procvar(p: psometype) to procvar(p: pointer) are not supported; on the
plus side, even those type conversions are checked for validity
o note: requires {$modeswitch nestedprocvars} in all programs/units
that rely on this functionality
git-svn-id: trunk@40598 -
2018-12-20 21:22:40 +00:00
pierre
e7aadde92f
Modify tbs/tb0588.pp to check that a warning is issued about non-initialized return value, moved to tbf directory
...
git-svn-id: trunk@40521 -
2018-12-11 08:47:59 +00:00
yury
4682ac269d
* Further improvement for r40180:
...
An uninitialized function Result of a managed type needs special handling.
When passing it as a var parameter a warning need to be emitted, since a user
may expect Result to be empty (nil) by default as it happens with local vars
of a managed type. But this is not true for Result and may lead to serious issues.
The only exception is SetLength(Result, ?) for a string Result. A user always
expects undefined contents of the string after calling SetLength(). In such
case a hint need to be emitted.
+ Tests for this.
git-svn-id: trunk@40216 -
2018-11-04 15:37:52 +00:00
florian
352fb866ef
* is_range_test returns false if "lower" bound is greater than "upper" bound
...
git-svn-id: trunk@39837 -
2018-09-27 20:24:52 +00:00
florian
a34d4e715c
Merged riscv_new branch
...
git-svn-id: trunk@39813 -
2018-09-26 19:49:08 +00:00
svenbarth
06267006f3
* explicitely handle the boolean types to determine the bit size as all of them have the bit size 1
...
+ added test
git-svn-id: trunk@39786 -
2018-09-21 13:24:49 +00:00
Jeppe Johansen
74a7963d58
Redo overflow checking code.
...
Fix shift operators in case of unsigned subreg operations. There should be no sign extension here.
Add some unittest implementations that test stack execution and writing to readonly constants.
git-svn-id: branches/laksen/riscv_new@39762 -
2018-09-16 18:37:59 +00:00
Jeppe Johansen
fb0ef295f1
Fixed unittests that needed arch specific inline assembler.
...
git-svn-id: branches/laksen/riscv_new@39716 -
2018-09-09 09:18:58 +00:00
svenbarth
072699d38a
* protect the destructors of tabstractrecordsymtable and twithsymtable against executing when called with a refcount > 1 (this fixes Mantis #34210 )
...
+ added simplified test
git-svn-id: trunk@39693 -
2018-08-31 19:16:45 +00:00
florian
6b9f52b4f2
+ couple of { %OPT=-CE } to tests added
...
git-svn-id: branches/laksen/riscv_new@39641 -
2018-08-19 12:42:26 +00:00
svenbarth
32c307e9ce
* fix for Mantis #34021 : if one of the two operators is an array constructor try to use an operator overload for that first before converting it to a set
...
+ added tests
git-svn-id: trunk@39554 -
2018-08-03 15:24:59 +00:00
florian
0c6cf12fbf
+ support for the directive $EXCESSPRECISION
...
git-svn-id: trunk@39443 -
2018-07-12 21:39:50 +00:00
nickysn
e813a11e85
+ support TP7-compatible @proc^ (as in FillChar(@proc^,...))
...
git-svn-id: trunk@39343 -
2018-06-29 14:16:35 +00:00
svenbarth
ff407c56d9
* extend scanning of $modeswitch to support not only + and -, but also ON and OFF like other switches
...
+ added tests
git-svn-id: trunk@39280 -
2018-06-22 21:29:08 +00:00
pierre
e518bd52ba
Explicitly disabled overflow and range check for these two tests
...
git-svn-id: trunk@39266 -
2018-06-21 04:52:37 +00:00
svenbarth
7990b2e3f3
* apply patch from J. Gareth Moreton to implement Int() for SSE (currently only used on Win64)
...
+ added test
git-svn-id: trunk@38993 -
2018-05-14 21:08:04 +00:00
pierre
f28ab34f06
unicodeducet must appear before fpwidestring to set current_collation at startup
...
git-svn-id: trunk@38962 -
2018-05-09 23:11:48 +00:00
svenbarth
abd893cac4
* fix for Mantis #33635 : correctly working SSE2 based Frac() implementation by J. Gareth Moreton
...
+ added test
git-svn-id: trunk@38903 -
2018-05-04 15:44:40 +00:00
svenbarth
cfa373a8cf
* fix case of string with ranges as labels
...
+ add test
git-svn-id: trunk@38860 -
2018-04-27 21:06:33 +00:00
pierre
4a2348a38b
skip targets that do not support libraries
...
git-svn-id: trunk@38772 -
2018-04-14 16:09:50 +00:00
pierre
ab7fb33d67
Restore removed ifdef UNIX around iosxwstr/cwstring unit loading
...
git-svn-id: trunk@38763 -
2018-04-13 06:22:21 +00:00
pierre
52b830a434
Use USE_INTERNAL_UNICODE to be able to test fpwidestrings on different targets
...
git-svn-id: trunk@38757 -
2018-04-12 20:39:34 +00:00
pierre
e69a7489d9
Add wide string needed units for go32v2 or darwin
...
git-svn-id: trunk@38736 -
2018-04-12 10:07:16 +00:00
pierre
4cf1ac209a
Add %skiptarget=$nothread to tests using threads
...
git-svn-id: trunk@38528 -
2018-03-15 09:05:26 +00:00
pierre
cc22913a4c
Modify DoMem parameter type to SizeUInt and adapt tests using this function, to avoid run time errors with range check
...
git-svn-id: trunk@38521 -
2018-03-13 21:59:58 +00:00
florian
61053ead34
+ optimize is operator if used on sealed classes as proposed in #30097
...
git-svn-id: trunk@38387 -
2018-02-28 22:09:24 +00:00
florian
70519c0837
* do not use crt by default, reduced wrong fails hopefully
...
git-svn-id: trunk@38345 -
2018-02-25 15:34:15 +00:00
florian
8731854165
* test code for avr assembler by Christo Crause
...
* fix size of val field in TOprRec for avr, resolves #32946
git-svn-id: trunk@38291 -
2018-02-19 21:23:28 +00:00
florian
6400d612e8
+ seg(<procvardef>) returns the segment stored in the procedure variable
...
git-svn-id: trunk@38216 -
2018-02-11 22:26:01 +00:00
florian
e5ebc65cce
* if si and di are allocated on i8086, using an index in references is not possible anymore
...
git-svn-id: trunk@38203 -
2018-02-11 15:54:37 +00:00
svenbarth
640480272f
* adjust TThread.Synchronize so that it also works correctly if the passed in thread instance is not the instance of the current thread
...
+ added test
git-svn-id: trunk@38124 -
2018-02-05 21:50:00 +00:00
svenbarth
22932493b9
* if the debug info of a parent def is considered as queued then ensure that it is indeed queued (if it should already be in the list then the duplicate entry would have the state written if it's checked and thus ignored)
...
+ added test
git-svn-id: trunk@37969 -
2018-01-14 16:46:10 +00:00
svenbarth
afa6d1bdb0
* extend test a little bit to ensure that nested Concat() calls for strings work correctly
...
git-svn-id: trunk@37724 -
2017-12-12 19:54:38 +00:00
svenbarth
f6a867ef04
* move handling of Concat to tinlinenode so that it can be easily extended for dynamic arrays
...
+ added test
git-svn-id: trunk@37429 -
2017-10-08 10:39:34 +00:00
svenbarth
9619576515
+ add support for $SetPE{OS,SubSys,User}Version directives; Delphi compatible; Note: $SetPEUserVersion takes precedence to $Version
...
+ added test
git-svn-id: trunk@37364 -
2017-09-30 13:55:29 +00:00
svenbarth
81a0f88d8c
+ add Delphi compatible TThread.ForceQueue() which enqueues the method also for the main thread (at least if the RTL is in multi threading mode, otherwise it's still executed right away - whether this is Delphi compatible needs to be tested as I only have a 10.1 currently which does not yet support TThread.ForceQueue())
...
+ added test
git-svn-id: trunk@37359 -
2017-09-29 21:19:45 +00:00
maciej-izak
8b5524ac3a
* ignore is_publishable for properties in interfaces (related to $M+ directive). $M has effect on visibility of default section for classes. Interface has always only public section (fix for problem in tb0631.pp)
...
git-svn-id: trunk@37136 -
2017-09-03 19:05:21 +00:00
svenbarth
7b675b6769
* correctly write the type of open array parameters as the element def and not the array def
...
+ added test that shows the linking error if not done so (otherwise that should already be covered by trtti15.pp)
git-svn-id: trunk@37083 -
2017-08-29 20:17:24 +00:00
svenbarth
83e4585b0f
* correctly handle unit identifiers inside specializations of generic routines
...
git-svn-id: trunk@37080 -
2017-08-29 18:29:10 +00:00
Károly Balogh
13d2ae8166
m68k: disabled obsolete test which tested between FPU_NONE and FPU_SOFT defaults...
...
git-svn-id: trunk@36626 -
2017-07-01 21:29:00 +00:00
nickysn
504662826a
* fixed the rtl cpu ifdefs for the rol/ror/sar cpu support check
...
git-svn-id: trunk@36153 -
2017-05-08 10:16:15 +00:00
nickysn
4a8a7c210a
* fixed test on platforms that don't have 8-bit and 16-bit rol/ror
...
git-svn-id: trunk@36144 -
2017-05-07 13:34:26 +00:00
florian
b3f889e028
* -Ox options are incremental, so disable all optimizations first in case testing is run with -O4
...
git-svn-id: trunk@36135 -
2017-05-06 18:47:41 +00:00