sergei
|
06192a8137
Values of managed variables are never ever used after decrementing reference on the variable, so there is no point of having a 'decrement reference' as a separate operation. We can always do 'finalize', i.e. clear the contents after decref.
|
13 gadi atpakaļ |
sergei
|
b1cbf30a94
* Managed types passed to out formal parameters must be completely cleaned (decrementing refcount is not enough) at caller side, because callee side doesn't know their actual type and cannot initialize them. Resolves #20962.
|
13 gadi atpakaļ |
sergei
|
3a579ced7b
* Fixed IE201103063 when <dynamic array of unmanaged type> is being passed to <out open array> parameter.
|
13 gadi atpakaļ |
pierre
|
b6de7f0d6b
* Suppress Comaprison might be always false if first_mm_imreg is zero
|
14 gadi atpakaļ |
svenbarth
|
d0705a1779
Rebase to revision 17236
|
14 gadi atpakaļ |
svenbarth
|
96116a6c3a
Several adjustments because virtual methods in helpers are just normal methods and a VMT isn't generated for them either.
|
14 gadi atpakaļ |
sergei
|
48d93dc40e
* Fixed handling of "open array of managed type" out-parameters at caller side. Reference count should be decremented only for those array elements which are actually passed to the called procedure; it may be a part of original array if range or slice is used. Concludes work on #18859.
|
14 gadi atpakaļ |
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 gadi atpakaļ |
svenbarth
|
d12b198c7f
Rebase to revision 16888
|
14 gadi atpakaļ |
Jonas Maebe
|
be2bb0b2e1
* free function return location if the callnode immediately copies it to a
|
14 gadi atpakaļ |
paul
|
56bf42de57
compiler: implement record methods and class methods:
|
14 gadi atpakaļ |
Jonas Maebe
|
e6c09430cb
* fixed inverted condition in r16052 that could cause superfluous parameter
|
15 gadi atpakaļ |
Jonas Maebe
|
6094cb79dc
* fixed internalerrors on non-use_fixed_stack platforms after r16050:
|
15 gadi atpakaļ |
Jonas Maebe
|
f13f6627c4
* moved use_fixed_stack from cgutils to a method in paramgr so it can
|
15 gadi atpakaļ |
joost
|
b938ea0f2a
* For cdecl functions the funcret is not popped by the caller when it is passed
|
15 gadi atpakaļ |
joost
|
65ab1e820b
* Safecall on linux/i386 now behaves like cdecl plus hidden exception support.
|
15 gadi atpakaļ |
Jonas Maebe
|
57bd6d2685
+ merged nestedprocvars branch
|
15 gadi atpakaļ |
Jonas Maebe
|
a7eb6bf64b
* fixed checking validity of temporary parameter location that triggered
|
15 gadi atpakaļ |
Jonas Maebe
|
283018a3bf
* changed tprocdef.funcretloc[] from a tlocation into a tcgpara so it can
|
15 gadi atpakaļ |
Jonas Maebe
|
46ff0c4fc4
* extracted gen_load_cgpara_loc()
|
15 gadi atpakaļ |
Jonas Maebe
|
f5c52b25cd
* removed "and not is_class()" condition from is_managed_type(), because
|
15 gadi atpakaļ |
Jonas Maebe
|
e9b62c1294
* refactored general loc->cgpara loading code in ncgcal into helpers in
|
15 gadi atpakaļ |
Jonas Maebe
|
ef824c53f8
* more cpu-specific ifdef'd fpu/intregister code removed
|
15 gadi atpakaļ |
Jonas Maebe
|
ceb063c7fe
* moved support for passing floating point values in integer registers from
|
15 gadi atpakaļ |
Jonas Maebe
|
9bc15a5f61
* renamed a_param_* to a_load_*_cgpara
|
15 gadi atpakaļ |
florian
|
c1f3d8dcaa
* unified names of system_*/systems_* sets
|
15 gadi atpakaļ |
Jonas Maebe
|
d1538ab023
o added ARM VPFv2/VFPv3 support:
|
15 gadi atpakaļ |
Jonas Maebe
|
3660bf7f98
* integrated the transformation of an Objective-C method call into a call
|
16 gadi atpakaļ |
Jonas Maebe
|
cc5aeb09de
* fixed handling the result value of functions where the result type is
|
16 gadi atpakaļ |
florian
|
c0d4efed2e
* forbid passing derived classes to call by reference parent classes (for objects, this is still allowed), resolves #13135
|
16 gadi atpakaļ |