svenbarth
1d6b591872
* add tests for TVirtualInterface
...
git-svn-id: trunk@42089 -
2019-05-16 21:44:54 +00:00
svenbarth
16d9b5bee9
+ add TVirtualInterface which allows to implement a interface with method RTTI by merely providing an event handler
...
git-svn-id: trunk@42088 -
2019-05-16 21:44:50 +00:00
svenbarth
755e271b4e
* fix for Mantis #35566 by applying patch by Martin Friebe: correctly dereference the 32-bit length value for Windows Widestrings
...
git-svn-id: trunk@42087 -
2019-05-16 20:56:18 +00:00
pierre
fb2a8e23d0
Fix compilation of GDB version 7.12.1
...
git-svn-id: trunk@42086 -
2019-05-16 12:44:08 +00:00
pierre
c0f064a35c
Remove two warnings about missing case (others are still present in ppudump.pp source)
...
git-svn-id: trunk@42085 -
2019-05-16 12:42:39 +00:00
pierre
8d4588e1b2
Fix compilation of compiler with -dPREPROCWRITE
...
git-svn-id: trunk@42084 -
2019-05-16 12:17:32 +00:00
pierre
e35110b68c
Fix baseunix PPU compilation rule for Haiku
...
git-svn-id: trunk@42083 -
2019-05-16 11:31:33 +00:00
pierre
902ef73c7c
Allways use local pt variable to ameliorate readability of code
...
git-svn-id: trunk@42082 -
2019-05-16 08:24:45 +00:00
pierre
c8129c5228
Disable 64-bit version of CPU_SOURCE is 32-bit
...
git-svn-id: trunk@42081 -
2019-05-16 08:21:09 +00:00
nickysn
e0b523ef14
* updated the asm parts of the i386 OpenBSD startup code as well
...
git-svn-id: trunk@42080 -
2019-05-15 17:16:21 +00:00
nickysn
806b65da6b
* also update the startup asm code in prt0.as for OpenBSD x86_64
...
git-svn-id: trunk@42079 -
2019-05-15 16:24:41 +00:00
nickysn
357d3ca390
- removed cprt0.as from the OpenBSD i386 RTL as well
...
git-svn-id: trunk@42078 -
2019-05-15 16:13:57 +00:00
nickysn
ef86b3ab29
- delete cprt0.as from the OpenBSD x86_64 startup code, because it's not needed for bootstrapping
...
git-svn-id: trunk@42077 -
2019-05-15 15:37:51 +00:00
nickysn
058336db40
* invoke _csu_finish before __init the OpenBSD x86_64 C library startup code
...
git-svn-id: trunk@42076 -
2019-05-15 15:22:54 +00:00
nickysn
77f86d22a5
* updated the parameter list to _FPC_proc___start in the OpenBSD x86_64 startup code
...
git-svn-id: trunk@42075 -
2019-05-15 14:27:42 +00:00
nickysn
f2719e438c
* updated the OpenBSD x86_64 assembly startup code
...
git-svn-id: trunk@42074 -
2019-05-15 13:52:28 +00:00
svenbarth
45479302c1
- ValueToFFIValue is no longer needed
...
git-svn-id: trunk@42073 -
2019-05-15 05:29:00 +00:00
svenbarth
5d6a837b63
* also test callbacks for libffi
...
git-svn-id: trunk@42072 -
2019-05-15 05:28:57 +00:00
svenbarth
9fa4a619d7
+ add support for callbacks to the FFI invoke manager
...
git-svn-id: trunk@42071 -
2019-05-15 05:28:54 +00:00
svenbarth
0d6d3a1529
* for callbacks argument values are not needed, so make the need for aArgValues optional
...
git-svn-id: trunk@42070 -
2019-05-15 05:28:51 +00:00
svenbarth
1c58ef49f3
* directly use the indirection information instead of calculating it a second time in ValueToFFIValue()
...
git-svn-id: trunk@42069 -
2019-05-15 05:28:48 +00:00
svenbarth
68c9b83d87
* for callbacks it's needed to know whether an argument is indirect or not
...
git-svn-id: trunk@42068 -
2019-05-15 05:28:45 +00:00
svenbarth
5516bcb266
* move check for argument/result indirection to separate function
...
git-svn-id: trunk@42067 -
2019-05-15 05:28:42 +00:00
svenbarth
ea270d9800
* move creation of the CIF object to a separate function in preparation for callbacks
...
git-svn-id: trunk@42066 -
2019-05-15 05:28:39 +00:00
svenbarth
f6ca44292f
* move SErrMethodImplCreateFailed to interface
...
git-svn-id: trunk@42065 -
2019-05-15 05:28:36 +00:00
Jonas Maebe
ad6897ffd8
* fixed Darwin/AArch64 flt/int-div-by-zero error codes (fix for 42045, as
...
noted by AlexeyT)
git-svn-id: trunk@42064 -
2019-05-14 19:19:19 +00:00
Jonas Maebe
cf9596421b
* fixed crashes on platforms using parentfpstructs with generic routines
...
that contain nested functions (when specialised, procedures don't have
the main function of the unit/program as parent procinfo)
git-svn-id: trunk@42063 -
2019-05-14 19:19:14 +00:00
michael
167ca93d25
* Patch from Ondrej to remove unnecessary overload keywords
...
git-svn-id: trunk@42062 -
2019-05-14 08:36:52 +00:00
pierre
0961e49919
Add new files required to fix RTL compilation for macos target
...
git-svn-id: trunk@42061 -
2019-05-14 04:31:36 +00:00
pierre
090074276e
Fix RTL compilation for macos target
...
git-svn-id: trunk@42060 -
2019-05-14 04:29:24 +00:00
Jonas Maebe
b291d17fc5
* fix overflow errors in case coverage code
...
git-svn-id: trunk@42059 -
2019-05-13 20:30:28 +00:00
michael
6649fab22d
* Fix bug ID #0035580
...
git-svn-id: trunk@42058 -
2019-05-13 20:23:50 +00:00
michael
e4385d1b19
* Fix bug ID #35576
...
git-svn-id: trunk@42057 -
2019-05-13 20:15:00 +00:00
michael
dc592a888f
* Make explicit that Integer is 32-bit
...
git-svn-id: trunk@42056 -
2019-05-13 11:47:46 +00:00
Jonas Maebe
883d1f2a79
- removed test that shortstring is aligned to a multiple of pointer size,
...
as the compiler does not guarantee any such thing
git-svn-id: trunk@42053 -
2019-05-12 21:08:42 +00:00
Jonas Maebe
0227c55b53
- removed explicit linking of ptest.o, as that happens already automatically
...
due to the "uses ptest" and breaks LTO (then both ptest.o and ptest.bc
get linked, resulting in duplicate symbols)
git-svn-id: trunk@42052 -
2019-05-12 21:08:39 +00:00
michael
fdccb0d62f
* FIx compilation with 3.0.4
...
git-svn-id: trunk@42049 -
2019-05-12 15:36:04 +00:00
michael
58f1a8513b
* FIx compilation for platforms that do not have extended
...
git-svn-id: trunk@42048 -
2019-05-12 15:33:26 +00:00
Jonas Maebe
ba1b4b1c92
+ support for verifying whether a case statements handles all possibilities
...
(based on patch by Martok)
o enabled by default in ISO and Extended Pascal: compile-time error if not
the case in ISO mode, warning and run-time error in Extended Pascal mode
o warning enabled by default in all other modes for boolean, enumeration and
subrange integer types with ranges different from the default ones
(i.e., different from 0..255, -128..127, 0..65536, etc)
o warnings for all ordinal types can be enabled in all modes with
-CC
git-svn-id: trunk@42047 -
2019-05-12 14:29:11 +00:00
Jonas Maebe
281b3ad276
* fix case completeness and unreachable code warnings in compiler that would
...
be introduced by the next commit
git-svn-id: trunk@42046 -
2019-05-12 14:29:03 +00:00
Jonas Maebe
5c20481c7b
* fixed floating point div-by-zero RTE code on Darwin (208 instead of 200,
...
fixes webtbs/tw32671)
git-svn-id: trunk@42045 -
2019-05-12 14:28:55 +00:00
Jonas Maebe
f76cde1c4c
* set correct fileinfo for statements_til_end() block
...
git-svn-id: trunk@42044 -
2019-05-12 14:28:52 +00:00
marco
f5e684067d
* turn off MB_PRECOMPOSED for encodings named in MSDN multibytetowidechar function, as detailed by Aserge in https://forum.lazarus.freepascal.org/index.php?topic=45380.0;topicseen
...
git-svn-id: trunk@42043 -
2019-05-12 14:18:36 +00:00
michael
60efc9e81c
* Add Read/Write(Buffer) TBytes, ReadData/WriteData, ReadBufferData/WriteBufferData to be Delphi compatible
...
git-svn-id: trunk@42042 -
2019-05-12 10:09:16 +00:00
michael
e958438fc9
* Add largeint (int64) parameter supportby Silvio Clecio (bug ID 35554)
...
git-svn-id: trunk@42041 -
2019-05-12 07:54:02 +00:00
michael
43da09722c
* Patch from Ondrej Pokorny to fix bug ID #35544 (accept short timezones)
...
git-svn-id: trunk@42040 -
2019-05-12 07:51:38 +00:00
svenbarth
faaa9f94fa
* addstringdef() now correctly declares the debug information for a Windows WideString, so use that instead of treating it merely like a PWideChar
...
git-svn-id: trunk@42039 -
2019-05-11 15:38:59 +00:00
svenbarth
e769233436
* fix for Mantis #35386 : use the correct size for the string's length (SizeInt for Ansi-/UnicodeString and DWord for WideString)
...
git-svn-id: trunk@42038 -
2019-05-11 15:38:56 +00:00
svenbarth
1349f1db03
* fix for Mantis #35359 : only WideString counts the size in Byte, UnicodeString uses the size in WideChars
...
git-svn-id: trunk@42037 -
2019-05-11 15:38:51 +00:00
svenbarth
251c559662
* fix for Mantis #35533 : when searching for helpers on types that usually don't support a point operator, don't use automatic dereferentiation
...
+ added tests
git-svn-id: trunk@42036 -
2019-05-10 20:56:41 +00:00