Commit History

Author SHA1 Message Date
  svenbarth 44d27a9d1d Rebase to revision 16946 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
  Jonas Maebe a199344bf4 * don't check for duplicate symbols when adding a class helper symbol, see 14 years ago
  svenbarth d12b198c7f Rebase to revision 16888 14 years ago
  svenbarth 7cc7826343 - msg*: found a message to reuse 14 years ago
  svenbarth e19bcfae38 Added a flag set to TSymtable that tells whether it contains a class helper symbol, which is currently only used for static- and globalsymtables. 14 years ago
  paul a04481c89f compiler: simplify enumerator search methods of TObjectDef by reusing implementation from TAbstractRecordDef 14 years ago
  svenbarth 07eebff55c Rebase to revision 16827 14 years ago
  paul a39733a0a2 compiler: extend enumerator support for records: 14 years ago
  svenbarth d4be11cb42 Implement advanced class helper syntax which allows "inheritance" of class helpers. This is not the same as normal class inheritance as its only used to extend the scope to other class helpers (that pseudo heritage line) when searching for a symbol. The real parent is always the extended class. 14 years ago
  paul 368c215070 compiler: always derive DispInterface from IDispatch, this solve a problem with assigning dispinterface to IUnknown or IDispatch variables 14 years ago
  paul dad8313512 compiler: handle dispinterfaces the same way as com interfaces because they are IDispatch descendants: increment/decrement they references in assignments and parameters passing by _AddRef, _Release 14 years ago
  svenbarth a9b64c80ad Rebase to revision 16728 14 years ago
  svenbarth aed9f0a5f7 Added first version of class helper support (not fully working and not fully featured) 14 years ago
  Jonas Maebe 3ca3276400 * changed syntax of external objcclasses (see wiki/FPC_PasCocoa). Another 14 years ago
  paul 55a0fefb1f compiler: implement generic array type: 14 years ago
  paul 7dd6cf07b4 compiler: comment TSymTableType entries + formatting 14 years ago
  paul fc33a2542b formatting 14 years ago
  paul e8502b8ec2 compiler: make current_genericdef, current_specializedef tstoreddef instead of tabstractrecorddef to implement generic arrays 14 years ago
  Jonas Maebe 2222f2c44b * renamed is_class_or_interface_or_dispinterface_or_objc() into 14 years ago
  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 years ago
  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 years ago
  paul dc5f5c3f63 compiler: use current_structdef instead of current_objectdef in more places 14 years ago
  paul 86d3e41442 compiler: replace MODESWTICH POINTERARITHMETICS with $POINTERMATH directive, disable pointer arithmetic in delphi mode by default (compatible with delphi), enable pointer arithmetic in fpc/objfpc modes as they had it enabled by default before, add has_pointer_math field to tpointerdef to allow pointer arithmetic with such pointer even if pointer math mode is off (delphi compatible) + tests 14 years ago
  paul b811f1be15 compiler: implement delphi style class operators: 14 years ago
  paul bf3c098c18 compiler: check that records methods have implementation too. previously check worked only for some object types 14 years ago
  paul 54b5172286 compiler: fix compiler crash (bug #0018222) 14 years ago
  paul 7852295f26 compiler: start parsing of record constructors and destructors: 14 years ago
  paul 289c9bd192 compiler: remove unneeded checks and typecasting caused by move of objectoptions into tabstractrecorddef 14 years ago
  paul 4f274b157c compiler: move objectoptions to tabstractrecorddef because it will be needed for records too 14 years ago