Sven/Sarah Barth
1addfcf55f
* ensure that _LookupVtableInfoEx isn't called with a type that needs special handling as we can't (or won't) really cover that using some generic RTTI handling
2023-11-08 23:28:52 +01:00
Sven/Sarah Barth
f24e336f70
* essentially undo 4823ca7114
as comparers that need now use a suitable class implementation directly
2023-11-08 23:28:52 +01:00
Sven/Sarah Barth
2fd69363d1
* use the explicit implementations of the I*Comparer<> interfaces for types like records and objects; fixes #40074 and #40077 on systems using the Sys V ABI
2023-11-08 23:28:52 +01:00
Sven/Sarah Barth
2c573982f4
+ introduce explicit implementations for the IComparer<>, IEqualityComparer<> and IExtendedEqualityComparer<> interfaces for types that should be compared using binary comparison (e.g. records, objects, etc)
2023-11-08 23:28:52 +01:00
Pierre Muller
e59df58dbc
Commit new utils/fpcm/revision.inc after aarch64-iphonesim target addition
2023-11-08 23:28:52 +01:00
Dmytro Bogatskyy
1cb4a08418
Add aarch64-iphonesim target
2023-11-08 23:28:52 +01:00
florian
f2b62a2ce4
* spelling fixed
2023-11-08 23:28:51 +01:00
florian
8270af8a01
* patch by Rika: Use Index* for pointer lists, resolves #40218
2023-11-08 23:28:51 +01:00
florian
fa2e4d7d15
* patch by Rika: Shorten cutils.compareansistrings, resolves #40213
2023-11-08 23:28:51 +01:00
Jonas Maebe
0594f9ae59
WPO: fix dead code detection, and handle procvars
...
Extend dead code detection to not only look for the main mangled name, but also
for any aliases before deciding that a routine has been dead-stripped.
Assume objects/classes can also be constructed if the address of one of their
constructors or of the TObject.NewInstance class method has been taken.
Resolves #40204
2023-11-08 23:28:51 +01:00
florian
002c7efa7a
* revert use of DW_AT_external for types as this is not covered by the dwarf standard
2023-11-08 23:28:51 +01:00
florian
1f77b3e626
* write types declared in the interface section with a DW_AT_external tag, should resolve #40210
2023-11-08 23:28:51 +01:00
florian
b2295d339a
* fix of Erroneous reading of the value of the StackLength variable at program start based on issue report by Sergey Larin, resolves #40211
2023-11-08 23:28:51 +01:00
florian
fc4a75b925
+ support FILEEXISTS(...) in preprocessor expressions, resolves #39527
...
+ tests
* tscannerfile.readpreproc sets preproc_pattern correctly for quoted strings
2023-11-08 23:28:50 +01:00
Pierre Muller
15775d155e
Fix interactive information log error
2023-11-08 23:28:50 +01:00
marcoonthegit
9dfc42a67a
* Add ptr types for fixed(u)int, fixes #40205
2023-11-08 23:28:50 +01:00
florian
c433deb0f2
* also initalize default helper variables of initialization sections, resolves #40183
2023-11-08 23:28:50 +01:00
Michaël Van Canneyt
be2ec41768
* Better signature for Initialize/Finalize dummies
2023-11-08 23:28:50 +01:00
Michaël Van Canneyt
c5ac1488ab
* Add support for select query parameters
2023-11-08 23:28:50 +01:00
Michaël Van Canneyt
d46cf5f91d
* Port in small letters, postgres requires lowercase port setting
2023-11-08 23:28:50 +01:00
Marcus Sackrow
6251c0dc84
Arosunits: rexx unit added
2023-11-08 23:28:50 +01:00
Jonas Maebe
db07d0b0f3
LLVM: cleaned up some comments
2023-11-08 23:28:50 +01:00
Jonas Maebe
2de553b826
LLVM: LLVM 16 support
...
No changes compared to LLVM 15 that affect us
2023-11-08 23:28:50 +01:00
Jonas Maebe
6e35770ea7
LLVM: don't use type names in ctor/dtor arrays
...
Workaround for https://github.com/llvm/llvm-project/issues/56809
2023-11-08 23:28:50 +01:00
Jonas Maebe
8c50d989e5
WPO: also consider NewInstance to detect class instancing
...
Resolves #40200
2023-11-08 23:28:50 +01:00
Rika Ichinose
823a032fd4
IndexWord and IndexDWord for i386 without REP SCAS.
2023-11-08 23:28:49 +01:00
florian
a030e99318
* PopCount takes care only of the bit pattern, so take the uvalue to avoid an internal error, resolves #40190
2023-11-08 23:28:49 +01:00
Rika Ichinose
b9e0dafa03
SSE2 Index* and Compare* for i386, chosen at runtime.
2023-11-08 23:28:49 +01:00
Sven/Sarah Barth
9e5c8446ae
* change Result of CheckSynchronize to true when at least one method was executed (matches with both FPC and Delphi documentation)
2023-11-08 23:28:49 +01:00
florian
4584d605b4
* take care of mips64* when calling gcc for the libgcc path
2023-11-08 23:28:49 +01:00
Mikhail Novosyolov
58d994b9c9
Fix messages about not found gcc
...
Code actually looks for the gcc executable inside $PATH, not for libgcc.
fpc works without the libgcc.so devel symlink.
2023-11-08 23:28:49 +01:00
Sven/Sarah Barth
90cfc806c3
+ add test for already fixed #37380
2023-11-08 23:28:49 +01:00
Sven/Sarah Barth
481d8d1513
* ensure that a procvar (especially a "REFERENCE TO") begins either with FUNCTION or PROCEDURE
...
+ added test
2023-11-08 23:28:49 +01:00
florian
130d7255f1
* project files updated
2023-11-08 23:28:49 +01:00
florian
139a382bf1
* compilation fixed with -Oodfa
2023-11-08 23:28:49 +01:00
florian
a0850d6545
+ riscv32-freertos: first version of TlinkerFreeRTOS.GenerateDefaultLinkerScripts
2023-11-08 23:28:49 +01:00
Michaël Van Canneyt
32c8215aa8
* Add possibility to read updated data
2023-11-08 23:28:49 +01:00
florian
12f6297ca4
* typo fixed
2023-11-08 23:28:48 +01:00
florian
5cc7d87e33
* library list for esp32c3 for IDF 5.0
2023-11-08 23:28:48 +01:00
florian
83fc822aa0
* 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-11-08 23:28:48 +01:00
Pierre Muller
f9f71eb1eb
Change libc statx function to weakexternal
...
Test if statx is nil before call
2023-11-08 23:28:48 +01:00
J. Gareth "Curious Kit" Moreton
9f8df68426
* x86: TEST/Jcc/TEST optimisations can now look beyond the next instruction under -O3
2023-11-08 23:28:48 +01:00
J. Gareth "Curious Kit" Moreton
55f8be3ec6
* x86: RegModifiedByInstruction and RegInInstruction
...
are now more accurate for (I)MUL and (I)DIV.
2023-11-08 23:28:48 +01:00
J. Gareth "Curious Kit" Moreton
060ae935f5
* x86: Fixed oversight in RegModifiedByInstruction not checking W0, W1 and WU-type flags
2023-11-08 23:28:48 +01:00
J. Gareth "Curious Kit" Moreton
2d5ef5b5d0
* x86: Fix to MOV/CMP register deallocation positioning
2023-11-08 23:28:48 +01:00
Sven/Sarah Barth
42472aac89
+ add function reference suitable overload of TThread.ForceQueue()
2023-11-08 23:28:48 +01:00
florian
34738e1db9
* patch by Rika: Remove dead code in DynArrayIndex, resolves #40194
2023-11-08 23:28:48 +01:00
ccrause
df21fb5e7d
Only perform OpCp2Op optimization when the first Op is ANDI and comparison is against 0.
2023-11-08 23:28:48 +01:00
J. Gareth "Curious Kit" Moreton
2217591da4
* x86: The LEA/LEA optimisations can now work with a different
...
destination register and the intermediate register still in
use.
2023-11-08 23:28:48 +01:00
J. Gareth "Curious Kit" Moreton
7122bdcd24
* x86: LeaLea2Lea now handles cases where the second LEA instruction
...
has a second register in the reference.
2023-11-08 23:28:48 +01:00