florian
|
25e19f27a0
+ write name of missing feature in error message
|
10 ani în urmă |
nickysn
|
bff8dc3fbf
+ added parser support for huge pointer declarations
|
11 ani în urmă |
nickysn
|
8b7863d076
+ added warning in case a far pointer is declared on a platform that does not
|
11 ani în urmă |
svenbarth
|
9ab5affd55
Contrary to popular believe the VMT for a generic needs to be at least generated so that check for inherited methods can be done correctly. This does however not mean that the VMT is written to the object file which is handled at a completely different place. Fixes Mantis #26193.
|
11 ani în urmă |
svenbarth
|
639a59df92
Added support for partial specialization. This should fix a few problems with generics, the tests for which will be added in the next days after I've verified them.
|
11 ani în urmă |
Jonas Maebe
|
338c064beb
* moved x86-specific tpointerdef functionality to architecture-specific
|
11 ani în urmă |
Jonas Maebe
|
b57c95043f
+ support overriding tdef/tsym methods with target-specific functionality:
|
11 ani în urmă |
paul
|
79ef05407a
compiler: fix error message (was error message about resourcestring for property)
|
11 ani în urmă |
florian
|
4d5119bf1c
* fixes several issues which cause warnings by the dfa code when using it to detect uninitialized variables
|
11 ani în urmă |
Jonas Maebe
|
3ed60082d3
* don't generate typed constant initialisers for set and enum constants
|
11 ani în urmă |
Jonas Maebe
|
8dd956cbde
* convert unicode/widestring constants to ansistring in resourcestring
|
11 ani în urmă |
Jonas Maebe
|
fb8fb29574
* record/use the code page of string constants typecasted to an ansistring
|
12 ani în urmă |
nickysn
|
5966cc088d
* got rid of tpointerdef.update_savesize, overrode size instead
|
12 ani în urmă |
svenbarth
|
2c792659ce
Fix for Mantis #24071.
|
12 ani în urmă |
nickysn
|
abeb2a3aaa
* fixed the far pointer size not being updated after reading the near/far type modifier, which caused far pointers to be allocated only 2 bytes
|
12 ani în urmă |
nickysn
|
b0f7786782
+ added support for special versions of near data pointers associated with a x86 segment register. They are supported on all x86 platforms: i8086, i386 and x86_64
|
12 ani în urmă |
svenbarth
|
344571cb4e
Added support for type helpers. In non Delphi modes they use "type helper" and in mode Delphi they use "record helper". They can also be used on constants.
|
12 ani în urmă |
florian
|
81e0e3114c
* throw an error if threadvars are used but not supported
|
12 ani în urmă |
svenbarth
|
4adb36e8da
Add support for generic type constraints. They are currently only useful to stop specialization of a generic. The parsing of a generic is still too lax and needs to be changed in the future...
|
12 ani în urmă |
florian
|
ca5fabda6d
* cleanup some unused units from uses clauses
|
13 ani în urmă |
svenbarth
|
29c71d39ac
Preparations for upcoming work on generics:
|
13 ani în urmă |
Jonas Maebe
|
01b5e2b6f6
* use the parsed node type for checking the validity of default parameter
|
13 ani în urmă |
svenbarth
|
aa0f1bdf26
pdecl.pas, readconstant: If we are parsing a constant declaration in a generic and we encounter an intrinsic then this intrinsic is left as is (thus the node p returned by comp_expr will be a inlinen instead of an expected ordconstn, stringconstn, etc.). Nevertheless we need to create a symbol for the constant (which isn't done otherwise). In the case of SizeOf a constant "0" will be created. This fixes Mantis #21593.
|
13 ani în urmă |
paul
|
4312aa4e08
compiler: allow compiler to find real class definition during class members parse to handle references to self constants + test
|
13 ani în urmă |
Jonas Maebe
|
aee5380ae0
* merged trunk up to r20882
|
13 ani în urmă |
florian
|
ce845bf97c
* introduction of in_generic in r20699 was unneeded, replaced by parse_generic
|
13 ani în urmă |
florian
|
79a77ae7d6
+ in_generic for testing if currently a generic declaration/definition is parsed/record
|
13 ani în urmă |
paul
|
d59c0237b2
compiler: global property can't be a class property
|
13 ani în urmă |
svenbarth
|
9cb16c950f
This fixes Mantis #20851 .
|
13 ani în urmă |
svenbarth
|
a1ef0add65
When searching for the generic def of nested types inside specializations we first need to check local declarations inside the method if we are in one. Only then we may search inside the type's declaration. Fixes #20836 .
|
13 ani în urmă |