Commit Graph

2401 Commits

Author SHA1 Message Date
florian
3e453f92fc * statx based Sysutils.FileGetDate with handle fixed
+ test

git-svn-id: trunk@48520 -
2021-02-07 17:59:28 +00:00
florian
b08717fef6 * make statx based Sysutils.FileAge working with relative pathes
+ test

git-svn-id: trunk@48519 -
2021-02-07 17:41:27 +00:00
florian
b4a1c27c58 * renamed new syscall wrapper in linux to be consist with the others
git-svn-id: trunk@48479 -
2021-01-31 22:25:18 +00:00
svenbarth
d13838ac0b + add a test which ensures that a "const TVarData" parameter is passed as a reference.
This is required for Delphi compatibility as implementers of IVarInvokable or
  inheritors of TInvokableVariantType need to modify the variant data by using
  a pointer to the TVarData because it's passed as const and thus not modifyable
  by itself.
  This behavior is documented in so far as the C++ builder documentation shows
  that the same parameter is implemented as "const&".

git-svn-id: trunk@48478 -
2021-01-31 21:23:29 +00:00
florian
b8ab06aae7 + futimens syscall
* make use of futimens syscall in sysutils unit
  + tests

git-svn-id: trunk@48472 -
2021-01-31 17:12:39 +00:00
florian
0c77536f11 + linux.fputimensat which properly uses the _tim64 version if needed and available
+ test

git-svn-id: trunk@48470 -
2021-01-31 16:24:47 +00:00
florian
33cd5778cd * properly check for linux version supporting statx
git-svn-id: trunk@48469 -
2021-01-31 16:23:23 +00:00
florian
f39f8d0f1a * linux: make use of statx in Sysutils.FileAge if available
git-svn-id: trunk@48457 -
2021-01-30 18:47:27 +00:00
florian
402876bc1f * let theapthread wait unneededly less so the total run time is shorter
git-svn-id: trunk@48388 -
2021-01-24 13:26:49 +00:00
yury
7ffa963127 * Moved the tregistry2 test back to packages and added more test OS targets.
git-svn-id: trunk@48383 -
2021-01-24 11:05:34 +00:00
yury
d83e1a33ca * tregistry2 test: Use cwstring on unices. Perform the test only on Windows and Linux.
git-svn-id: trunk@48263 -
2021-01-21 10:42:07 +00:00
yury
fe09efbd0e * Removed usage the Windows unit from the tregistry2 test.
git-svn-id: trunk@48226 -
2021-01-20 09:46:44 +00:00
yury
9fd0f94d7c * tregistry2 test: Delete reg.xml and the app config dir.
git-svn-id: trunk@48205 -
2021-01-19 17:10:55 +00:00
yury
a29bfe5505 * Moved the tregistry2.pp test from packages to tests in order it to be run by daily test runs. tregistry2 has been failing for years and nobody has noticed this.
git-svn-id: trunk@48204 -
2021-01-19 16:52:43 +00:00
pierre
f2568e37e4 Add testing for single float type in trndmode.pp
git-svn-id: trunk@48020 -
2021-01-03 22:03:27 +00:00
pierre
57861c934d Check also that SetRoundMode returns correctly previous rounding mode
git-svn-id: trunk@48019 -
2021-01-03 21:55:35 +00:00
pierre
3362abb30c * Set softfloat_rounding_mode indise SetRoundMode function for all CPUs.
* SetRoundMode returns previous rounding mode value for all CPUs.

git-svn-id: trunk@48018 -
2021-01-03 21:44:18 +00:00
svenbarth
c96029ebd5 * Delphi does not allow a generic method to be overloaded by a non generic type of the same name (unlike for generic types and non generic routines); this is probably done to simplify the implementation of implicit specializations of generic methods so we do this as well. For this we change the dummy symbol for generic routines from a typesym to a procsym
+ added tests

Note: what Delphi /does/ allow however is to overload a generic routine with a generic type... go figure. :/ We currently don't allow that

git-svn-id: trunk@48002 -
2021-01-02 23:23:39 +00:00
florian
6866b07266 * simplified test after r47892
git-svn-id: trunk@47893 -
2020-12-29 18:26:20 +00:00
Jonas Maebe
6d03f2807a * made exit codes unique
git-svn-id: trunk@47860 -
2020-12-27 13:19:05 +00:00
Jonas Maebe
b359080f42 * fixed round(currency) so it takes the rounding mode into account on
platforms where currency is "type int64"
  * inline trunc(currency), trunc(comp) and round(comp) on platforms where
    currency and comp are "type int64"

git-svn-id: trunk@47859 -
2020-12-27 13:19:02 +00:00
pierre
8b34e11da3 Add code to test Linux version, try statx syscall only if version is >= to 4.11
git-svn-id: trunk@47850 -
2020-12-26 17:08:56 +00:00
florian
6db164c993 * min/max optimization needs to check both operands of the if condition, even if no else-statement is passed, resolves #38249
git-svn-id: trunk@47843 -
2020-12-23 22:41:37 +00:00
florian
4f05523db9 + RTMSupport function
+ if available use RTM to support InterlockedCompareExchange128 on i386

git-svn-id: trunk@47833 -
2020-12-22 22:00:08 +00:00
florian
b8fc193b0c * extended test
git-svn-id: trunk@47818 -
2020-12-19 12:58:35 +00:00
florian
1d92cc43bb * fpc_ln_real raises an exception for invalid operands if they exception is not masked
git-svn-id: trunk@47813 -
2020-12-18 22:36:17 +00:00
svenbarth
d29f95d9e1 * apply patch by Blaise.ru to allow specializations for the result type of function and method variables
+ added tests

git-svn-id: trunk@47795 -
2020-12-16 21:43:30 +00:00
florian
88a0d4d64b + optimize if x>a then x:=a; into min(a,x);, similiar for max
* test extended

git-svn-id: trunk@47767 -
2020-12-13 09:52:44 +00:00
yury
67284c7452 + Added a test for proper setting of fc_no_direct_exit in flowcontrol.
git-svn-id: trunk@47755 -
2020-12-11 14:17:18 +00:00
florian
3707cb4b1e * handle min/max properly if it is applied to NaNs
* test extended

git-svn-id: trunk@47729 -
2020-12-08 20:41:58 +00:00
florian
a16b34d951 * test for min/max intrinsics
git-svn-id: trunk@47697 -
2020-12-06 14:19:00 +00:00
svenbarth
69e6f3dcbb * if a call inside a generic's code that involves generic type arguments can't be clearly determined then postpone it till specialization in the hope that the type will be clear then
+ added test

git-svn-id: trunk@47686 -
2020-12-04 22:07:34 +00:00
svenbarth
3597696e98 * fix for Mantis #38145: allow overloading of assignment operators that return ShortStrings with a specific size
+ added tests

The following rules for using these operator overloads as *implicit* overloads apply (Delphi compatible):
  - if a found assignment operator returns a default ShortString then that is used
  - if only one assignment operator to a String[x] is found then that is used
  - otherwise the assignment is not possible
The explicit assignment checks for an exact match (and falls back for an implicit assignment). This is not entirely Delphi compatible as Delphi seems to favor the first found symbol in that case, but sometimes also not... :/

git-svn-id: trunk@47634 -
2020-11-29 15:47:52 +00:00
svenbarth
82957ec5a3 * Fix for Mantis #38122: when a deref node is passed as a Self parameter for a type helper (which is a var parameter) we need to pass the non-derefentiated value so that the data it points to can be modified by the helper's method (this is Delphi compatible)
+ added tests

git-svn-id: trunk@47625 -
2020-11-28 18:32:24 +00:00
florian
9dcf85a8ef + Xtensa: FMA support
git-svn-id: trunk@47563 -
2020-11-24 20:59:47 +00:00
svenbarth
c20cbcc28f + add test to check whether ComObj correctly dispatches Ansi-, Unicode- and WideString arguments
git-svn-id: trunk@47519 -
2020-11-21 20:17:14 +00:00
ondrej
be4c907117 * read int64 transition table from linux timezone files if available
git-svn-id: trunk@47324 -
2020-11-05 17:10:12 +00:00
ondrej
691fb2c9fe * add unix timezone test
git-svn-id: trunk@47322 -
2020-11-05 12:53:51 +00:00
ondrej
9b5d2322b6 Fix tepoch1 test
git-svn-id: trunk@47297 -
2020-11-03 20:15:04 +00:00
yury
438bba76b9 + Added a test for: When {$mode delphi} and {$modeswitch nestedprocvars} it is allowed to assign a nested routine which does not use parentfp to a regular procvar. And then call this procvar without any side effects.
git-svn-id: trunk@47209 -
2020-10-26 17:53:40 +00:00
Jonas Maebe
9376f5a43a * AArch64: added SIMD instructions (only plain ARMv8-A for now)
o added AArch64 regset parsing support in assembler reader, means that "{"
     no longer starts comments there (like in the ARM assembler reader)
   o added AArch64 indexed SIMD register support and removed old cg hacks
     that worked around its absence

git-svn-id: trunk@47116 -
2020-10-15 20:29:36 +00:00
florian
00c6d530b5 * test needs delphi mode apparently
git-svn-id: trunk@47075 -
2020-10-10 13:50:35 +00:00
michael
be371d901c * test for new split option
git-svn-id: trunk@47069 -
2020-10-09 11:33:57 +00:00
florian
284aca7348 + x86: FstpFld2Fst optimization (re-enabled for safe cases)
git-svn-id: trunk@47024 -
2020-09-30 19:20:14 +00:00
Tomas Hajny
a71f87357d * simplified version of SeekEof for improved TP/BP/Delphi compatibility by Andrey 'Croco' Stolyarov as fix for #37716, plus a new test for testing the compatibility
git-svn-id: trunk@46946 -
2020-09-24 19:33:28 +00:00
svenbarth
e72f324f42 * according to ISO 10206 (Extended Pascal) 6.9.3.5 the "otherwise"-clause is supported for case-statements
+ added test

git-svn-id: trunk@46943 -
2020-09-24 11:41:43 +00:00
svenbarth
2c372071fd * correctly handle static arrays with a lower index <> 0
+ added test

git-svn-id: trunk@46901 -
2020-09-19 21:20:07 +00:00
svenbarth
2ff18e48a0 * fix for Mantis #36909: apply patch by Ryan Joseph so that array constructors can be used for static arrays as well.
+ added test

git-svn-id: trunk@46891 -
2020-09-18 15:00:15 +00:00
svenbarth
d3e18ccb5e * fix for Mantis #37221: apply adjusted patch by Ondrej Pokorny to allow the use of Copy() on open array parameters (the result will be a dynamic array)
+ added test

git-svn-id: trunk@46890 -
2020-09-18 15:00:10 +00:00
florian
f8b17c410b + Xtensa: make use of ABS.S
+ extended test for abs(...) with single tests

git-svn-id: trunk@46852 -
2020-09-11 21:51:48 +00:00