Michaël Van Canneyt
b3800d38cb
* Handle potential double defintion of INFINITE
2024-02-24 19:52:00 +01:00
Michaël Van Canneyt
e1b2feac33
* Set monitor structures in place
2024-02-24 18:11:23 +01:00
Michaël Van Canneyt
30a20cc209
* Add operators to TMethod, for Delphi compatibility
2024-02-20 15:36:18 +01:00
Michaël Van Canneyt
4af99236b0
* Add TDispatchMessage
2024-02-13 19:57:05 +01:00
Sven/Sarah Barth
dd4f7e9148
* fix #40592 : make the Delphi-compatible attributes usable, but in a way that makes it clear to the user that they won't work
...
+ added test
2024-01-15 22:29:47 +01:00
Michaël Van Canneyt
7e4aca384f
* Some delphi compatibility issues solved (PtrToNil and TGUID operator)
2023-11-29 14:34:27 +01:00
Michaël Van Canneyt
6045b3a6bd
* Add Delphi-compatible DisposeOf and friends.
2023-10-30 09:17:01 +01:00
Michael VAN CANNEYT
ed50a1941b
* Unicode resource strings
2023-07-25 16:06:53 +02:00
Michael VAN CANNEYT
8ef4625e4d
* UnicodeString<>WideString on windows
2023-07-24 15:38:09 +02:00
Michaël Van Canneyt
defc7e99d1
* Fix compilation for avr-embedded (no unicode strings)
2023-07-24 14:54:30 +02:00
Michaël Van Canneyt
ceddc2aec3
* TArray is now in system unit
2023-07-22 15:30:30 +02:00
Michaël Van Canneyt
757d2b4f91
* Move TMarshal to system unit
2023-07-22 15:24:27 +02:00
Rika Ichinose
7f4420495b
TMarshal & TMarshaller, strange things from Delphi.
2023-07-22 15:24:27 +02:00
Michael VAN CANNEYT
b69c78ccce
* String -> ShortString/RTLString
2023-07-14 17:26:11 +02:00
Michael VAN CANNEYT
d2d3fe6bc3
* Char -> AnsiChar
2023-07-14 17:26:10 +02:00
Michaël Van Canneyt
517d1b017c
* Interface thunk class must query owner object interface list
2023-07-11 17:47:03 +02:00
Michaël Van Canneyt
70282826ad
* Parent class for hidden TVirtualInterface thunking class
2023-07-11 08:36:57 +00:00
Michaël Van Canneyt
b121045d4a
* TPtrWrapper for Delphi compatibility
2023-07-09 15:05:53 +02:00
Michaël Van Canneyt
b8738944ed
* Add TNoRefCountObject (delphi compatibility)
2023-06-05 11:43:07 +02:00
florian
c0979bbc0c
* TObject.InitInstance got very big so inlining has no advantage anymore, resolves #39494
2021-12-25 19:09:22 +01:00
michael
82346563c1
* Add StoredAttribute class, bug ID #37602
...
git-svn-id: trunk@46506 -
2020-08-20 12:06:14 +00:00
michael
8bc2326b77
* Fix bug #37601 : add some attribte definitions
...
git-svn-id: trunk@46505 -
2020-08-20 11:53:43 +00:00
florian
931d4dcfee
* ensure the rtl and the packages for embedded compile with features exceptions and classes disabled
...
git-svn-id: trunk@43931 -
2020-01-13 21:20:03 +00:00
ondrej
9a9cd15ec4
TInterfacedObject.Destroy: fix case for correct auto-completion
...
git-svn-id: trunk@43418 -
2019-11-08 21:29:26 +00:00
svenbarth
e97a2cb03e
* tests with Delphi showed that an attribute class must explicitely declare a parameterless constructor if it should be used, cause TCustomAttribute.Create is private
...
Note: this also means that TCustomAttribute itself can not be used as an attribute
* adjusted existing tests
+ added test
git-svn-id: trunk@42471 -
2019-07-20 20:03:38 +00:00
svenbarth
b2932393df
Reintegration of Custom Attributes branch by Joost van der Sluis with patches reworked by Svetozar Belic [patch 1/3]
...
Implemented attributes for class types and properties (based on work by Joost van der Sluis). Added TCustomAttribute - a base class for attributes. Added TUnitInfo record to RTTI. It contains the unit name and unit options (for now only a flag which specifies if the unit contains attributes). Added several tests for attributes.
git-svn-id: trunk@42356 -
2019-07-12 22:04:48 +00:00
florian
3b77146e1c
* adapt FPC_Unwind_Exception for native eh_frame support
...
git-svn-id: branches/debug_eh@41307 -
2019-02-11 20:30:21 +00:00
Jonas Maebe
ef1757a5a7
+ ARM EABI exception handling support for PSABIEH
...
git-svn-id: branches/debug_eh@41213 -
2019-02-03 21:10:04 +00:00
Jonas Maebe
3cfad8fba8
* renamed FPC_USE_PSEABIEH to FPC_USE_PSABIEH
...
git-svn-id: branches/debug_eh@40400 -
2018-11-29 21:30:42 +00:00
Jonas Maebe
b2d1ab7f05
* basic helpers for DWARF/PSABI EH-based exception handling (based on
...
GCC 4.2.1's libstdc++/libsupc++)
- compile RTL with -dFPC_USE_PSEABIEH to include
- the x86-64 compiler currently crashes if it has been compiled with
optimizations (the eh_return_data_regno function from cpubase
probably triggers mantis #34385 )
git-svn-id: branches/debug_eh@40071 -
2018-10-28 18:16:42 +00:00
florian
0725bfcdf0
* do not generate references to the variant type, if the variants feature is not available
...
git-svn-id: trunk@37660 -
2017-12-02 17:16:32 +00:00
michael
3787d52dee
* Fix bug ID #32353 , reset ref count fields in destructor
...
git-svn-id: trunk@37112 -
2017-09-02 15:07:23 +00:00
michael
9878dc280b
* Fix bug ID #32168
...
git-svn-id: trunk@36757 -
2017-07-21 16:08:01 +00:00
marco
a2d397c064
* pmethod declaration, patch from mantis #31576 by Silvio
...
git-svn-id: trunk@35632 -
2017-03-20 21:19:20 +00:00
florian
091b31fc76
* fix avr compilation after r34975 by more tests against feature defines, resolves #31036
...
git-svn-id: trunk@35015 -
2016-11-29 20:37:58 +00:00
florian
bcb7061314
* made TObject usable, even if no ansistring support is available
...
git-svn-id: trunk@34974 -
2016-11-26 19:33:31 +00:00
michael
784da563ef
* Patch from Silvio Clecio to implement QualifiedClassName (bug ID 30985)
...
git-svn-id: trunk@34966 -
2016-11-26 13:53:27 +00:00
nickysn
7d15b688e8
* TInterfaceEntry changed to a variant record, that overlays a CodePointer on
...
top of the IOffset: SizeUInt field, because it is sometimes used as a
CodePointer (for etStaticMethodResult and etStaticMethodClass) and sometimes
as a SizeInt and these two types can be of different size in certain i8086
memory models
git-svn-id: trunk@34645 -
2016-10-07 20:18:02 +00:00
nickysn
019f904be8
- removed the FPC 2.6.x compatibility ifdefs from tinterfaceentry
...
git-svn-id: trunk@34637 -
2016-10-06 21:10:40 +00:00
svenbarth
fb6546972b
* IID and IIDStr references of the VMT's interface table need to be indirect
...
git-svn-id: trunk@34338 -
2016-08-19 13:06:26 +00:00
svenbarth
61551cbb0f
* move properties and functions of TVMT to the end of the record, so that one only needs to adjust the total entry count TVMTBuilder.generate_vmt_def()
...
git-svn-id: trunk@34223 -
2016-07-29 13:54:36 +00:00
svenbarth
685f820622
* switch class'/object's parent reference in the VMT to an indirect reference
...
(this also requires the adjustment of a test)
git-svn-id: trunk@34172 -
2016-07-22 12:53:51 +00:00
Jonas Maebe
f22c7cc3fc
- removed "packed" and dummy field (that was required because of
...
the "packed" keyword) from the TResourceStringRecord record
git-svn-id: trunk@32393 -
2015-11-21 12:36:03 +00:00
Jonas Maebe
0c904e92ff
* moved TResourceStringRecord from the objpas to the system unit so it can be
...
used in the compiler when emitting resourcestrings
git-svn-id: trunk@32208 -
2015-10-30 20:45:19 +00:00
Jonas Maebe
67b8aceaee
* synchronized with privatetrunk till r30095
...
git-svn-id: branches/hlcgllvm@30101 -
2015-03-05 20:32:15 +00:00
Jonas Maebe
87e55caabc
* declare tvarrec.vpchar explicitly as pansichar for documentation purposes
...
(mantis #26842 )
git-svn-id: trunk@28823 -
2014-10-15 15:37:23 +00:00
Jonas Maebe
427b05e97c
* converted TVMTWriter.intf_write_table() to the high level typed constant
...
builder
o removed variant record part in the RTL to force a specific size/alignment,
since we now import the record into the compiler and hence it will always
be handled correctly
git-svn-id: branches/hlcgllvm@28777 -
2014-10-06 20:54:23 +00:00
florian
03c553606e
- unneeded spaces removed
...
git-svn-id: trunk@28740 -
2014-10-04 13:45:17 +00:00
nickysn
4f4e00e758
+ i8086 far data memory model fixes in tinterfaceentry and tinterfacetable
...
git-svn-id: trunk@27724 -
2014-05-03 14:38:00 +00:00
nickysn
e1716c097d
* set the vmtParent constant according to sizeof(SizeInt) instead of
...
SizeOf(ptruint), because the +size and -size fields are of type SizeInt and
not ptruint or pointer.
git-svn-id: trunk@27540 -
2014-04-11 23:10:04 +00:00