pierre
|
c1e93bd2c2
+ compiler/symdef.pas: Add missing call to tderef.reset methods in all tdef constructors.
|
6 years ago |
svenbarth
|
cb8f6f637c
* fix big endian targets by using an explicit assignment with typecast instead of an absolute variable
|
6 years ago |
svenbarth
|
92cce05f5f
* as a workaround for some compiler bug introduced during 3.1.1 the freeing of the management operator offset entry lists is moved to a nested procedure as that does not trigger the bug (even with -O2 or -O3)
|
6 years ago |
svenbarth
|
600ed6701e
+ keep track whether a structured type has fields with management operators (or fields that in turn have fields with management operators and so on) and store that in the PPU to speed up compilation again
|
7 years ago |
svenbarth
|
072699d38a
* protect the destructors of tabstractrecordsymtable and twithsymtable against executing when called with a refcount > 1 (this fixes Mantis #34210)
|
7 years ago |
svenbarth
|
21e7ddaac7
+ add method to retrieve a list of management operator/field offset pairs for a specific management operator inside a structured type (no matter how deeply nested they are)
|
7 years ago |
florian
|
68eb921d46
* broken compilation after r39347 fixed
|
7 years ago |
svenbarth
|
cc153176f3
+ add a new symtable option sto_has_non_trivial_init that is true if the symtable contains a symbol with an
|
7 years ago |
svenbarth
|
80ed66f349
* move calculation of sto_needs_init_final to a separate method do_init_final_check()
|
7 years ago |
Jonas Maebe
|
cb7730a423
* fixed execution order of implicit finalization and class destructors: first
|
7 years ago |
svenbarth
|
b322339758
+ extend tstoredsymtable with method register_children to register all its symbols and defs
|
7 years ago |
svenbarth
|
83e4585b0f
* correctly handle unit identifiers inside specializations of generic routines
|
8 years ago |
svenbarth
|
236a9b0aa5
* rework the checks for a helper's extended def to be a class so that it can be more easily extended by other objecttypes
|
8 years ago |
maciej-izak
|
751bde9792
Revert revision 36436 from trunk. Final fix for issue #31675.
|
8 years ago |
maciej-izak
|
d3d29fa84c
Revert revisions 36133, 36128 from trunk.
|
8 years ago |
maciej-izak
|
631d4a2d53
* Move global variable in_preproc_comp_expr into tscannerfile class.
|
8 years ago |
maciej-izak
|
6d1ad52dc5
* for symbols used in preprocessor expressions, we don't want to increase references count (for smaller final binaries). Partial fix for problem presented in mantis 31675. Preprocessor functions like declared() in uses section will work only for symbols declared in implicytly included modules (for example like for heaptrc by option -gh, see example/test tw31675.pp)
|
8 years ago |
florian
|
0897bd154a
+ align(<int64>,<int64>) and align(<qword>,<qword>), resolves an issue reported on the mailing list with large records
|
8 years ago |
svenbarth
|
7dc4f16db3
* fix for Mantis #31431: allow specializations to allow private/protected variables that their generic could have accessed
|
8 years ago |
maciej-izak
|
25db29d0a6
* symtable.pas:
|
8 years ago |
maciej-izak
|
15ba9b54c6
Store informations about management operators in ppu files for records.
|
8 years ago |
maciej-izak
|
48b149acd4
New tokens for new management operators: Initialize, Finalize, AddRef and Copy. Small code adjustment for parser (pdecobj.pas, pstatmnt.pas, psub.pas, ptype.pas) was required because few of old token has from now value which is outside range of set: _CONSTRUCTOR, _FINALIZATION.
|
8 years ago |
svenbarth
|
969e19ba1a
* initialize module id of a symtable always to the id of the current module (at least if there is a current module, which is not the case for the initial macro symtable)
|
8 years ago |
svenbarth
|
d9ea6aae4d
* fix for Mantis #30761: always return the symbol found in the helper instead of doing this dependant on the presence of the overload attribute; for this the collection of all suitable overloads is done in tcallcandidates instead.
|
8 years ago |
svenbarth
|
d4e573c1e3
* fix for Mantis #27349: nested classes might also reside inside records
|
8 years ago |
svenbarth
|
ce18b10c81
* fix for Mantis #30530: when the global/static symtable is reached defowner is Nil, so respect that in the loop condition
|
8 years ago |
svenbarth
|
cb27889dea
* fix cycling by correctly handling the case that the global symtable of a program file is Nil
|
9 years ago |
svenbarth
|
36e5d02e8e
* addsymref: do not directly check the top level symtable against the current module's global symtable as that would be false for a specialize symtable; check the module id instead
|
9 years ago |
Jonas Maebe
|
c752050728
* don't print "parameter not used" hints for abstract methods (mantis #30431)
|
9 years ago |
pierre
|
ef1369fef2
Reset static recorddef variables to nil in InitSymtable, avoid crashes in TextMode IDE
|
9 years ago |