paul
|
a39733a0a2
compiler: extend enumerator support for records:
|
14 vuotta sitten |
paul
|
368c215070
compiler: always derive DispInterface from IDispatch, this solve a problem with assigning dispinterface to IUnknown or IDispatch variables
|
14 vuotta sitten |
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 vuotta sitten |
Jonas Maebe
|
3ca3276400
* changed syntax of external objcclasses (see wiki/FPC_PasCocoa). Another
|
14 vuotta sitten |
paul
|
55a0fefb1f
compiler: implement generic array type:
|
14 vuotta sitten |
paul
|
7dd6cf07b4
compiler: comment TSymTableType entries + formatting
|
14 vuotta sitten |
paul
|
fc33a2542b
formatting
|
14 vuotta sitten |
paul
|
e8502b8ec2
compiler: make current_genericdef, current_specializedef tstoreddef instead of tabstractrecorddef to implement generic arrays
|
14 vuotta sitten |
Jonas Maebe
|
2222f2c44b
* renamed is_class_or_interface_or_dispinterface_or_objc() into
|
14 vuotta sitten |
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 vuotta sitten |
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 vuotta sitten |
paul
|
dc5f5c3f63
compiler: use current_structdef instead of current_objectdef in more places
|
14 vuotta sitten |
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 vuotta sitten |
paul
|
b811f1be15
compiler: implement delphi style class operators:
|
15 vuotta sitten |
paul
|
bf3c098c18
compiler: check that records methods have implementation too. previously check worked only for some object types
|
15 vuotta sitten |
paul
|
54b5172286
compiler: fix compiler crash (bug #0018222)
|
15 vuotta sitten |
paul
|
7852295f26
compiler: start parsing of record constructors and destructors:
|
15 vuotta sitten |
paul
|
289c9bd192
compiler: remove unneeded checks and typecasting caused by move of objectoptions into tabstractrecorddef
|
15 vuotta sitten |
paul
|
4f274b157c
compiler: move objectoptions to tabstractrecorddef because it will be needed for records too
|
15 vuotta sitten |
paul
|
56bf42de57
compiler: implement record methods and class methods:
|
15 vuotta sitten |
paul
|
26cef34005
compiler:
|
15 vuotta sitten |
paul
|
902a78eec1
compiler: add current_structdef: tabstractrecorddef and point current_objectdef to it
|
15 vuotta sitten |
paul
|
5d1c9ab6ba
compiler: check visibility of record members, allow access to record consts and types:
|
15 vuotta sitten |
paul
|
d9a43f7858
compiler: cleanup
|
15 vuotta sitten |
florian
|
f570934b45
* patch by Aleksa Todorovic to fix generic interfaces, resolves #16100
|
15 vuotta sitten |
florian
|
b1a6ec532d
* fix bootstrapping with 2.4.2
|
15 vuotta sitten |
sergei
|
7dd93b1282
* Variant types: renamed varunicodestring to varustring and changed its value to $102 (for Delphi compatibility), introduced varUStrArg=$73, added some description comments.
|
15 vuotta sitten |
florian
|
d30952b408
* patch by Aleksa Todorovic which adds the ability to reference current generic class. Each reference to current generic class is "translated" to appropriate specialization of that generic class. There are two tests as part of the patch to test that it works. The patch, also, rejects declaring generic inside another generic. 0010479 is easy to implement with this patch applied, resolves #11777
|
15 vuotta sitten |
sergei
|
532f8b9ab5
* Type Word maps to variant type varword, not varqword (probably a typo).
|
15 vuotta sitten |
Jonas Maebe
|
d36f8ac542
* fixed potential buffer overflow error when creating the fullprocname for
|
15 vuotta sitten |