florian
|
26fbfaf5a7
+ introduce the usage of asizeint/asizeuint for cpus with sizeof("alu")<>sizeof(pointer)
|
14 lat temu |
svenbarth
|
44d27a9d1d
Rebase to revision 16946
|
14 lat temu |
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 lat temu |
Jonas Maebe
|
a199344bf4
* don't check for duplicate symbols when adding a class helper symbol, see
|
14 lat temu |
svenbarth
|
d12b198c7f
Rebase to revision 16888
|
14 lat temu |
svenbarth
|
7cc7826343
- msg*: found a message to reuse
|
14 lat temu |
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 lat temu |
paul
|
a04481c89f
compiler: simplify enumerator search methods of TObjectDef by reusing implementation from TAbstractRecordDef
|
14 lat temu |
svenbarth
|
07eebff55c
Rebase to revision 16827
|
14 lat temu |
paul
|
a39733a0a2
compiler: extend enumerator support for records:
|
14 lat temu |
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 lat temu |
paul
|
368c215070
compiler: always derive DispInterface from IDispatch, this solve a problem with assigning dispinterface to IUnknown or IDispatch variables
|
14 lat temu |
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 lat temu |
svenbarth
|
a9b64c80ad
Rebase to revision 16728
|
14 lat temu |
svenbarth
|
aed9f0a5f7
Added first version of class helper support (not fully working and not fully featured)
|
14 lat temu |
Jonas Maebe
|
3ca3276400
* changed syntax of external objcclasses (see wiki/FPC_PasCocoa). Another
|
14 lat temu |
paul
|
55a0fefb1f
compiler: implement generic array type:
|
14 lat temu |
paul
|
7dd6cf07b4
compiler: comment TSymTableType entries + formatting
|
14 lat temu |
paul
|
fc33a2542b
formatting
|
14 lat temu |
paul
|
e8502b8ec2
compiler: make current_genericdef, current_specializedef tstoreddef instead of tabstractrecorddef to implement generic arrays
|
14 lat temu |
Jonas Maebe
|
2222f2c44b
* renamed is_class_or_interface_or_dispinterface_or_objc() into
|
14 lat temu |
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 lat temu |
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 lat temu |
paul
|
dc5f5c3f63
compiler: use current_structdef instead of current_objectdef in more places
|
14 lat temu |
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 lat temu |
paul
|
b811f1be15
compiler: implement delphi style class operators:
|
14 lat temu |
paul
|
bf3c098c18
compiler: check that records methods have implementation too. previously check worked only for some object types
|
14 lat temu |
paul
|
54b5172286
compiler: fix compiler crash (bug #0018222)
|
14 lat temu |
paul
|
7852295f26
compiler: start parsing of record constructors and destructors:
|
14 lat temu |
paul
|
289c9bd192
compiler: remove unneeded checks and typecasting caused by move of objectoptions into tabstractrecorddef
|
14 lat temu |