Commit History

Author SHA1 Message Date
  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 years ago
  florian 99eadb91b3 * run CheckAndWarn to get proper locations for warnings about uninitialized variables 11 years ago
  florian 89f34965e9 * fix dfa of for nodes, loopiteration node introduced to get proper life information for the loop 11 years ago
  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 years ago
  florian cfcb4cab26 * simplify body of for loop before unrolling 12 years ago
  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 years ago
  florian ab39e6f7d8 * fix parameter order for compilerproc created by raise nodes 12 years ago
  florian 0e41df598e * merge i8086 branch by Nikolay Nikolov 12 years ago
  florian 709ba5e053 + introduce cnf_call_never_returns to signal the dfa if a call node never returns 12 years ago
  florian 075abd6220 + support of stackframesize for arm thumb 12 years ago
  Jonas Maebe dc7760bda0 * let type conversion nodes handle type checking for if/while/repeat 12 years ago
  florian fce9e953b4 + nested exit support 12 years ago
  sergei c766c50907 * Proper fix for SPARC cycling with -dCHECK_PIC, pi_needs_got additionally must be set in following cases: 12 years ago
  Jonas Maebe 29095e9dd3 * fixed if-simplication for C-style booleans by considering all values 12 years ago
  Jonas Maebe 5929ec5592 * turned getpropaccesslist, add_parameters and add_index_parameter into 12 years ago
  florian 6c8eed21c4 + implement auto inlining (-Ooautoinline) 13 years ago
  Jonas Maebe aee5380ae0 * merged trunk up to r20882 13 years ago
  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. 13 years ago
  Jonas Maebe 0a3a62811b + try/except and try/finally support for JVM target: 14 years ago
  florian d35d1ed357 + initial support for pascal booleans with sizes 2, 4 and 8 14 years ago
  florian 6e1d5e0aa0 * handle pointer+type param. correctly, resolves #19548 14 years ago
  svenbarth a944be69a6 * nflw.pas: search for enumerators in helpers for records as well 14 years ago
  svenbarth f7f357f18e * symconst.pas: 14 years ago
  svenbarth 963a4d7b23 Commit of a completely restructured helper implementation. Instead of changing objectdefs with odt_classhelper to odt_class, they'll have the odt_helper type assigned to and this will be kept. This also implies that the parent of a helper is its true parent while the extended type is set to a field in tobjectdef (extendeddef). 14 years ago
  svenbarth 07eebff55c Rebase to revision 16827 14 years ago
  svenbarth a317827456 symtable.pas: 14 years ago
  paul a39733a0a2 compiler: extend enumerator support for records: 14 years ago
  paul 56bf42de57 compiler: implement record methods and class methods: 14 years ago
  florian 474e8dc273 * ugly indention fixed 14 years ago
  florian eb3644140a * patches from Aleksa Todorovic for #15480 to improve error reporting, does not resolve #15480 15 years ago