Jonas Maebe
|
b57c95043f
+ support overriding tdef/tsym methods with target-specific functionality:
|
11 lat temu |
florian
|
08a4e1efe1
* handle for ... in on arrays of constant correctly, resolves also #25838
|
11 lat temu |
florian
|
e5aa0e4316
* set pi_uses_exceptions flag only if the try...finally frame is not an implicit frame
|
11 lat temu |
florian
|
1df293679d
* fixed setting of pi_uses_exception flags and unified usage, they should be set in pass_1
|
11 lat temu |
florian
|
b0441e1d64
* move setting of lnf_testatbegin into tfornode.simplify because it is a simplification
|
11 lat temu |
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 lat temu |
sergei
|
0e0273d53f
* Partially reverted r26192, preserving registers in presence of exceptions needs a different solution.
|
11 lat temu |
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 lat temu |
florian
|
99eadb91b3
* run CheckAndWarn to get proper locations for warnings about uninitialized variables
|
12 lat temu |
florian
|
89f34965e9
* fix dfa of for nodes, loopiteration node introduced to get proper life information for the loop
|
12 lat temu |
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 lat temu |
florian
|
cfcb4cab26
* simplify body of for loop before unrolling
|
12 lat temu |
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 lat temu |
florian
|
ab39e6f7d8
* fix parameter order for compilerproc created by raise nodes
|
12 lat temu |
florian
|
0e41df598e
* merge i8086 branch by Nikolay Nikolov
|
12 lat temu |
florian
|
709ba5e053
+ introduce cnf_call_never_returns to signal the dfa if a call node never returns
|
12 lat temu |
florian
|
075abd6220
+ support of stackframesize for arm thumb
|
12 lat temu |
Jonas Maebe
|
dc7760bda0
* let type conversion nodes handle type checking for if/while/repeat
|
12 lat temu |
florian
|
fce9e953b4
+ nested exit support
|
12 lat temu |
sergei
|
c766c50907
* Proper fix for SPARC cycling with -dCHECK_PIC, pi_needs_got additionally must be set in following cases:
|
12 lat temu |
Jonas Maebe
|
29095e9dd3
* fixed if-simplication for C-style booleans by considering all values
|
13 lat temu |
Jonas Maebe
|
5929ec5592
* turned getpropaccesslist, add_parameters and add_index_parameter into
|
13 lat temu |
florian
|
6c8eed21c4
+ implement auto inlining (-Ooautoinline)
|
13 lat temu |
Jonas Maebe
|
aee5380ae0
* merged trunk up to r20882
|
13 lat temu |
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 lat temu |
Jonas Maebe
|
0a3a62811b
+ try/except and try/finally support for JVM target:
|
14 lat temu |
florian
|
d35d1ed357
+ initial support for pascal booleans with sizes 2, 4 and 8
|
14 lat temu |
florian
|
6e1d5e0aa0
* handle pointer+type param. correctly, resolves #19548
|
14 lat temu |
svenbarth
|
a944be69a6
* nflw.pas: search for enumerators in helpers for records as well
|
14 lat temu |
svenbarth
|
f7f357f18e
* symconst.pas:
|
14 lat temu |