sergei
|
c8e65c501a
* Don't optimize away implicit initialization/finalization procedures if corresponding clause is present in the source but is empty. Resolves #19701.
|
14 anni fa |
sergei
|
6cb6569d51
* Set pi_uses_exceptions flag when creating/firstpassing ttryexceptnode or ttryfinallynode, not when parsing try statements. It ensures that procedures with exception handling nodes created by compiler (constructors in the first place, but also for..in loops with TObject iterators, etc.) are handled the same way as ones containing exception nodes from user code.
|
14 anni fa |
sergei
|
fa4b78363c
+ Handle safecall exceptions with a dedicated compilerproc, simplifies compiler part and reduces generated code size.
|
14 anni fa |
florian
|
c6a0cafdb0
* don't generate implicit exception frames for pure assembler routines, resolves #20075
|
14 anni fa |
florian
|
d7f7a9bb76
* patch by Alexander Shishkin to clean up $ifopt usage by $push/$pop, resolves #20346
|
14 anni fa |
sergei
|
b997094755
+ Generate unwind bytecode for function prologues on win64.
|
14 anni fa |
pierre
|
57f3f0a82b
scanner unit:
|
14 anni fa |
florian
|
cf0d808708
+ avr assemblers do not convert automatically cond. branches with too large jump distances into an unconditional branch and a reverse condition branch, so fpc does this now
|
14 anni fa |
pierre
|
239944f8d0
+ Use DLL name in assembler labels used to import DLL functions/variables
|
14 anni fa |
Jonas Maebe
|
9f4f21baa1
* set the line information for the initialization of local variables with
|
14 anni fa |
florian
|
f53a14ec38
* fix regressions caused by r17496
|
14 anni fa |
florian
|
e271595e20
* patch by Hans-Peter Diettrich to speed up specialize_objectdefs, resolves #17638
|
14 anni fa |
svenbarth
|
16e500ee3c
Removed old search algorithm
|
14 anni fa |
svenbarth
|
d0705a1779
Rebase to revision 17236
|
14 anni fa |
sergei
|
1c01d52ea6
* Improvements of tprocinfo class:
|
14 anni fa |
svenbarth
|
f7f357f18e
* symconst.pas:
|
14 anni fa |
svenbarth
|
d12b198c7f
Rebase to revision 16888
|
14 anni fa |
florian
|
cc10ab57ab
* create a stub on all targets when the external name changes, resolves #18371
|
14 anni fa |
paul
|
f5965a9ce4
compiler: specialize record methods the same way as currently done for object and class methods + test
|
14 anni fa |
paul
|
e8502b8ec2
compiler: make current_genericdef, current_specializedef tstoreddef instead of tabstractrecorddef to implement generic arrays
|
14 anni fa |
paul
|
52667b6822
compiler: implement generics for records based on generic objects implementation + 1 test
|
14 anni fa |
paul
|
2af416e145
compiler: move current_objectdef variable to implementation of pdecobj and use explicit type conversion to tobjectdef in other places where current_objectdef is needed
|
14 anni fa |
paul
|
ee78cf0f06
compiler: use current_structdef in more places where current_objectdef was used, change type of current_genericdef and current_specializedef to tabstractrecorddef for future use with generic records
|
14 anni fa |
paul
|
dc5f5c3f63
compiler: use current_structdef instead of current_objectdef in more places
|
14 anni fa |
Jonas Maebe
|
780e75bfac
o patch by Jeppe Johansen to fix mantis #17472:
|
14 anni fa |
sergei
|
8cbef5627e
Fixed rtti/finalization of objects that have ancestors and fields of managed types:
|
14 anni fa |
paul
|
b811f1be15
compiler: implement delphi style class operators:
|
14 anni fa |
paul
|
d1026bb052
compiler: reintegrate branch http://svn.freepascal.org/svn/fpc/branches/paul/extended_records
|
14 anni fa |
paul
|
11d4eddf67
compiler: a trial to implement record constructor
|
14 anni fa |
paul
|
56bf42de57
compiler: implement record methods and class methods:
|
14 anni fa |