Jonas Maebe
|
b57c95043f
+ support overriding tdef/tsym methods with target-specific functionality:
|
11 anni fa |
florian
|
08a4e1efe1
* handle for ... in on arrays of constant correctly, resolves also #25838
|
11 anni fa |
florian
|
e5aa0e4316
* set pi_uses_exceptions flag only if the try...finally frame is not an implicit frame
|
11 anni fa |
florian
|
1df293679d
* fixed setting of pi_uses_exception flags and unified usage, they should be set in pass_1
|
11 anni fa |
florian
|
b0441e1d64
* move setting of lnf_testatbegin into tfornode.simplify because it is a simplification
|
11 anni fa |
sergei
|
1ee9373fa6
* Changed function create_pd into method of ttryfinallynode, so it can be reused for Win32 SEH and, in the future, for DWARF-based exception handling on other targets.
|
11 anni fa |
sergei
|
0e0273d53f
* Partially reverted r26192, preserving registers in presence of exceptions needs a different solution.
|
11 anni fa |
sergei
|
e26ce9e442
* Fix code generation of for-loops. Keeping a copy of to-value in register during pass 2 is basically a hack, because register may be destroyed if an exception is raised and handled in loop body. This went unnoticed because generic setjmp-based exception handling is restoring registers to the state at entry to try block, and Win64 SEH also has some register-preserving features. However, for Win32 SEH it is not true.
|
11 anni fa |
florian
|
99eadb91b3
* run CheckAndWarn to get proper locations for warnings about uninitialized variables
|
12 anni fa |
florian
|
89f34965e9
* fix dfa of for nodes, loopiteration node introduced to get proper life information for the loop
|
12 anni fa |
nickysn
|
5973b231ec
* traisenode.pass_typecheck: in the case of 'raise X at addr,frame' require 'addr' to be a far pointer in i8086 far code memory models
|
12 anni fa |
florian
|
cfcb4cab26
* simplify body of for loop before unrolling
|
12 anni fa |
svenbarth
|
407e9d173b
Fix for Mantis #17598. When extended syntax is off allow the result of constructors to be dropped when the constructor is called as an instance method instead of a class method.
|
12 anni fa |
florian
|
ab39e6f7d8
* fix parameter order for compilerproc created by raise nodes
|
12 anni fa |
florian
|
0e41df598e
* merge i8086 branch by Nikolay Nikolov
|
12 anni fa |
florian
|
709ba5e053
+ introduce cnf_call_never_returns to signal the dfa if a call node never returns
|
12 anni fa |
florian
|
075abd6220
+ support of stackframesize for arm thumb
|
12 anni fa |
Jonas Maebe
|
dc7760bda0
* let type conversion nodes handle type checking for if/while/repeat
|
12 anni fa |
florian
|
fce9e953b4
+ nested exit support
|
12 anni fa |
sergei
|
c766c50907
* Proper fix for SPARC cycling with -dCHECK_PIC, pi_needs_got additionally must be set in following cases:
|
12 anni fa |
Jonas Maebe
|
29095e9dd3
* fixed if-simplication for C-style booleans by considering all values
|
13 anni fa |
Jonas Maebe
|
5929ec5592
* turned getpropaccesslist, add_parameters and add_index_parameter into
|
13 anni fa |
florian
|
6c8eed21c4
+ implement auto inlining (-Ooautoinline)
|
13 anni fa |
Jonas Maebe
|
aee5380ae0
* merged trunk up to r20882
|
13 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 |
Jonas Maebe
|
0a3a62811b
+ try/except and try/finally support for JVM target:
|
14 anni fa |
florian
|
d35d1ed357
+ initial support for pascal booleans with sizes 2, 4 and 8
|
14 anni fa |
florian
|
6e1d5e0aa0
* handle pointer+type param. correctly, resolves #19548
|
14 anni fa |
svenbarth
|
a944be69a6
* nflw.pas: search for enumerators in helpers for records as well
|
14 anni fa |
svenbarth
|
f7f357f18e
* symconst.pas:
|
14 anni fa |