pierre
|
c1e93bd2c2
+ compiler/symdef.pas: Add missing call to tderef.reset methods in all tdef constructors.
|
преди 6 години |
svenbarth
|
cb8f6f637c
* fix big endian targets by using an explicit assignment with typecast instead of an absolute variable
|
преди 6 години |
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 години |
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
|
преди 6 години |
svenbarth
|
072699d38a
* protect the destructors of tabstractrecordsymtable and twithsymtable against executing when called with a refcount > 1 (this fixes Mantis #34210)
|
преди 7 години |
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 години |
florian
|
68eb921d46
* broken compilation after r39347 fixed
|
преди 7 години |
svenbarth
|
cc153176f3
+ add a new symtable option sto_has_non_trivial_init that is true if the symtable contains a symbol with an
|
преди 7 години |
svenbarth
|
80ed66f349
* move calculation of sto_needs_init_final to a separate method do_init_final_check()
|
преди 7 години |
Jonas Maebe
|
cb7730a423
* fixed execution order of implicit finalization and class destructors: first
|
преди 7 години |
svenbarth
|
b322339758
+ extend tstoredsymtable with method register_children to register all its symbols and defs
|
преди 7 години |
svenbarth
|
83e4585b0f
* correctly handle unit identifiers inside specializations of generic routines
|
преди 8 години |
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 години |
maciej-izak
|
751bde9792
Revert revision 36436 from trunk. Final fix for issue #31675.
|
преди 8 години |
maciej-izak
|
d3d29fa84c
Revert revisions 36133, 36128 from trunk.
|
преди 8 години |
maciej-izak
|
631d4a2d53
* Move global variable in_preproc_comp_expr into tscannerfile class.
|
преди 8 години |
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 години |
florian
|
0897bd154a
+ align(<int64>,<int64>) and align(<qword>,<qword>), resolves an issue reported on the mailing list with large records
|
преди 8 години |
svenbarth
|
7dc4f16db3
* fix for Mantis #31431: allow specializations to allow private/protected variables that their generic could have accessed
|
преди 8 години |
maciej-izak
|
25db29d0a6
* symtable.pas:
|
преди 8 години |
maciej-izak
|
15ba9b54c6
Store informations about management operators in ppu files for records.
|
преди 8 години |
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 години |
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 години |
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 години |
svenbarth
|
d4e573c1e3
* fix for Mantis #27349: nested classes might also reside inside records
|
преди 8 години |
svenbarth
|
ce18b10c81
* fix for Mantis #30530: when the global/static symtable is reached defowner is Nil, so respect that in the loop condition
|
преди 8 години |
svenbarth
|
cb27889dea
* fix cycling by correctly handling the case that the global symtable of a program file is Nil
|
преди 9 години |
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 години |
Jonas Maebe
|
c752050728
* don't print "parameter not used" hints for abstract methods (mantis #30431)
|
преди 9 години |
pierre
|
ef1369fef2
Reset static recorddef variables to nil in InitSymtable, avoid crashes in TextMode IDE
|
преди 9 години |