svenbarth
|
97eefb6ac3
- the error recovery handling is no longer required
|
%!s(int64=5) %!d(string=hai) anos |
svenbarth
|
5b71ba2a9b
* treat a missing genericdef with no symname set as an internal error
|
%!s(int64=5) %!d(string=hai) anos |
svenbarth
|
ef6c9e930b
* correctly handle the genericdef being a procdef, otherwise no code will be generated (and no error either :/ )
|
%!s(int64=5) %!d(string=hai) anos |
svenbarth
|
1abc9c1fe7
* when specializing a routine all nested specializations must go to the para- or localsymtable as otherwise the symbol can't be found to be registered
|
%!s(int64=5) %!d(string=hai) anos |
svenbarth
|
d79e2ee9da
* also store, reset and restore the current module's procinfo
|
%!s(int64=5) %!d(string=hai) anos |
Jonas Maebe
|
a051b8d225
- remmoved doregister parameter from t*sym constructors, as the registration
|
%!s(int64=5) %!d(string=hai) anos |
Jonas Maebe
|
d8903ce6b3
- removed maxcrecordalign parameter/field from recordsymtables, as this value
|
%!s(int64=6) %!d(string=hai) anos |
Jonas Maebe
|
281b3ad276
* fix case completeness and unreachable code warnings in compiler that would
|
%!s(int64=6) %!d(string=hai) anos |
Jonas Maebe
|
e008785152
* insert the hidden parameters for objectdef methods after resolving
|
%!s(int64=6) %!d(string=hai) anos |
Jonas Maebe
|
ed2ae508d0
* only add hidden parameters for objectdef methods after generating the vmt,
|
%!s(int64=6) %!d(string=hai) anos |
Jonas Maebe
|
91d5457b38
* moved around/replaced the following procedures to stop nflw from depending
|
%!s(int64=6) %!d(string=hai) anos |
Jonas Maebe
|
28df55fe08
* moved handle_calling_convention() to pparautl
|
%!s(int64=6) %!d(string=hai) anos |
svenbarth
|
598ac21791
* if the generic dummy symbol is a procsym (with procdefs added) then this is the symbol that should be resolved to
|
%!s(int64=7) %!d(string=hai) anos |
svenbarth
|
06d7e26df0
* move code to add a symbol to the current module's generic dummy symbols into a new function pgenutil.add_generic_dummysym()
|
%!s(int64=8) %!d(string=hai) anos |
florian
|
b1dff29cbf
* removed unused units
|
%!s(int64=8) %!d(string=hai) anos |
svenbarth
|
8024fcd7ec
* if an operator overload in a structured type is invalid print an error only for the declaration and not the implementation as well
|
%!s(int64=8) %!d(string=hai) anos |
maciej-izak
|
e4565378db
* Allow for "record constraint" in Delphi mode more types like: ordinal, float, classical objects, enumerations (instead of just record). Delphi compatibility. Fix for mantis #24073.
|
%!s(int64=8) %!d(string=hai) anos |
svenbarth
|
d34acf3bc7
* fix for Mantis #31120: check current_genericdef only if the current_procinfo isn't used
|
%!s(int64=8) %!d(string=hai) anos |
svenbarth
|
6ba85c2a70
* second fix for Mantis #30626: also search in parent classes for a suitable pre-existing specialization
|
%!s(int64=8) %!d(string=hai) anos |
svenbarth
|
0a1e080089
* only create a new procsym for a specialization if it's indeed needed
|
%!s(int64=8) %!d(string=hai) anos |
svenbarth
|
a535d54bcb
* fix for Mantis #30939: Rework generation of the generic name to be less relying on the type hierarchy as a specialization inside the parameter declaration would want to have the full name of the procdef including its parameters, but those are still parsed at that stage (the pretty name is still a topic onto itself however...)
|
%!s(int64=8) %!d(string=hai) anos |
svenbarth
|
ee466b9a28
* extend tdef.fullownerhierarchyname() with a parameter that skips the inclusion of a procdef's parameter declaration using the new pno_noparams option
|
%!s(int64=8) %!d(string=hai) anos |
svenbarth
|
63b0024e4c
* fix for Mantis #30626: unset current_procinfo so that further specializations don't use a symtable to specialize themselves in that they shouldn't use (cause current_procinfo takes precedence)
|
%!s(int64=8) %!d(string=hai) anos |
svenbarth
|
fd7daf91df
+ new overload for generate_specialization_phase1() which allows to pass a specific symbol name without the need to specify a file position
|
%!s(int64=8) %!d(string=hai) anos |
svenbarth
|
627e30f47f
* factor() might return a typenode with a errordef, so check for that and don't add the typesymbol to the parameter list in that case; fixes the access violation of tw17181.pp
|
%!s(int64=9) %!d(string=hai) anos |
svenbarth
|
80c2e3b51a
* special detection of an ongoing specialization for the case that a function that belongs to a generic and has said generic as parameter or result is in turn specialized as a parameter or result of another generic function
|
%!s(int64=9) %!d(string=hai) anos |
svenbarth
|
6a14bb5014
* check the owner of current_specializedef as that is Nil if a generic routine is specialized and this is the specialization of one of its parameters or its result type
|
%!s(int64=9) %!d(string=hai) anos |
pierre
|
22a7ce8972
Fix memory leak due to double srsym allocation
|
%!s(int64=9) %!d(string=hai) anos |
Jonas Maebe
|
95f28e5e0c
* avoid a crash when processing synthetic methods of specialised classes:
|
%!s(int64=9) %!d(string=hai) anos |
svenbarth
|
6c3dd6b601
Another system, another regression... (this time tests/test/tgenfunc15.pp on i386-win32)
|
%!s(int64=9) %!d(string=hai) anos |