Alexey Sedunov
8cff709bfb
#KT-3023 Fixed
2012-11-07 18:33:21 +04:00
Alexander Udalov
415b6f8efe
Generate bridges for super-calls only when needed
...
#KT-2887 Fixed
2012-11-07 17:06:19 +04:00
Alexander Udalov
89b8bbec57
Do not add extra 'this' parameter for TImpl's accessor
...
Fixes weird cases like super-call from a closure inside a trait with a required
class
2012-11-07 17:06:18 +04:00
Alexander Udalov
2edb89b5c5
Refactor mysterious code in ExpressionCodegen
...
'super' receiver is now generated in visitSuperExpression()
2012-11-07 17:06:17 +04:00
Alexander Udalov
73282c41dc
Remove useless StackValue.valueOf()
2012-11-07 17:06:16 +04:00
Alexander Udalov
a9aef66b15
Remove useless StackValue.upcast()
2012-11-07 17:06:16 +04:00
Alexander Udalov
e89ccf5f1b
A couple toString() methods in backend
2012-11-07 17:06:15 +04:00
Alexander Udalov
cd35a6626e
KT-2963 VerifyError using traits with required classes
...
#KT-2963 Fixed
2012-11-07 17:06:14 +04:00
Natalia.Ukhorskaya
f139b637f3
Automatically cast error for intrinsic methods in array
...
#KT-2997 Fixed
2012-11-07 16:28:46 +04:00
Natalia.Ukhorskaya
91e83c2860
Wrong instruction for invoke private function
...
#KT-2202 Fixed
2012-11-02 11:49:10 +04:00
Natalia.Ukhorskaya
a9c567d19b
Add missed initializer for setter
2012-11-02 11:18:48 +04:00
Natalia.Ukhorskaya
481afeb914
Use getfield or putfield instructions for private properties instead of invokevirtual getA or setA
2012-11-02 11:18:47 +04:00
Andrey Breslav
ec255e8342
NO_RECEIVER_PARAMETER is now simply null
2012-11-01 19:53:22 +04:00
Andrey Breslav
4955ce5caa
ReceiverDescriptor renamed to ReceiverValue
2012-10-31 23:38:53 +04:00
Andrey Breslav
a91a99e5be
getImplicitReceiverHierarchy() returns a List
2012-10-31 23:38:53 +04:00
Andrey Breslav
555ac07b55
Migrating scopes onto ReceierParameterDescriptor
...
Getting rid of getImplicitReceiver() in JetScope
2012-10-31 23:33:12 +04:00
Andrey Breslav
bc592cb5cd
Migrating descriptors onto ReceiverParameterDescriptor
2012-10-31 23:33:12 +04:00
Natalia.Ukhorskaya
3b58eb4b60
Generate copy function for data classes
...
#KT-2779 Fixed
2012-10-31 15:46:48 +04:00
Alexander Udalov
4c5fe70804
Do not compare boxed values with 0 via IFEQ/IFNE
2012-10-30 22:54:20 +04:00
Rafael Cordones
cb99f26807
KT-3002 optimized ==/!=0
...
Optimize byte-code generation for integer comparisons != and ==.
Work done in Hackergarten Vienna.
Co-authored-by: Kilian Matt <kilian.matt@gmail.com >
2012-10-30 22:11:04 +04:00
Evgeny Gerashchenko
01311a1793
Moved and renamed DescriptorUtils.getInnerClasses
2012-10-30 18:41:01 +04:00
Alexander Udalov
3ca976ee77
Generate bridges for delegates
2012-10-30 16:48:02 +04:00
Alexander Udalov
dc5174670d
Minor, kill useless param
2012-10-30 16:48:00 +04:00
Alexander Udalov
8a0c057bd0
Remove OwnerKind.DelegateKind
...
It's not used anywhere anymore.
Add another assertion to checkMustGenerateCode()
2012-10-30 16:47:58 +04:00
Alexander Udalov
fcbb5fe191
DelegateKind is not needed when generating delegates
...
"this.context" is correct and more useful
2012-10-30 16:47:56 +04:00
Alexander Udalov
c3854e9bd4
Minor refactoring in delegate codegen
2012-10-30 16:47:54 +04:00
Alexander Udalov
142acba6f1
Remove unused method
2012-10-30 16:47:52 +04:00
Alexander Udalov
288e3a7b40
Cast arguments to proper types when generating delegates
...
Also minor refactoring in a couple places to adopt this style
2012-10-30 16:47:50 +04:00
Alexander Udalov
4cfe68da1e
Coerce any type to Number before unboxing
2012-10-30 16:47:46 +04:00
Peter Kofler
28160ecb11
fix KT-2892
2012-10-29 22:16:43 +01:00
Peter Brachwitz
81de3cd46a
Fix compilation of infix calls (KT-2929)
...
#KT-2929 Fixed
2012-10-29 22:01:56 +01:00
Svetlana Isakova
d45db0a331
created subpackage 'util'
2012-10-29 17:11:58 +04:00
Svetlana Isakova
152368eb04
ResolvedCall, ResolvedValueArgument moved to 'model' subpackage
2012-10-29 17:11:57 +04:00
Svetlana Isakova
06cee8bc16
AutoCastReceiver moved to autocasts package
2012-10-29 17:11:56 +04:00
Svetlana Isakova
b395d33ff0
debug names for temporary traces added
2012-10-29 14:41:49 +04:00
Alexander Udalov
880852861c
A couple utility methods
...
PsiCodegenPredictor.getFileForCodegenNamedClass() returns JetFile which
contains a declaration which will produce a class with a given name.
PsiCodegenPredictor.getFileForNamespacePartName() returns JetFile which
produces a namespace part with the given name.
BindingContextUtils.getContainingFile() returns JetFile which contains a
declaration which is matched to a given descriptor.
DescriptorUtils.findTopLevelParent() finds a top-level (i.e. its containing
declaration is NamespaceDescriptor) parent for a descriptor.
Also DescriptorUtils.isTopLevelFunction() is changed a little to accept not
only a function, but any descriptor
2012-10-25 21:28:43 +04:00
Alexander Udalov
a8798de8d0
NamespaceCodegen.getNamespacePartInternalName()
...
Should be used instead of getMultiFileNamespaceInternalName()
2012-10-25 21:28:42 +04:00
Alexander Udalov
e7a7afa0be
Sort all namespace files by name prior to assigning names in codegen
...
This helps to make names of closures etc. stable across compilation, should
also probably help to implement incremental compilation.
No new tests added
2012-10-25 21:28:41 +04:00
Sergey Mashkov
edb8797fa6
KT-2987 java.lang.AbstractMethodError/java.lang.NoSuchMethodError for delegated class by parameterized parent
...
#KT-2987 Fixed
2012-10-25 16:26:58 +04:00
Natalia.Ukhorskaya
a79a31cf01
#KT-2811 Fixed VerifyError on smart-cast 'this'
2012-10-23 13:20:29 +04:00
Natalia.Ukhorskaya
29ca8faa4e
Replace CodegenUtils.isDeprecated to KotlinBuiltIns.isDeprecated
2012-10-18 19:03:34 +04:00
Alexander Udalov
ce2b915645
Generate line numbers for static delegates
...
Fixes debugger's "step into" for multi-file package
2012-10-17 17:57:54 +04:00
Andrey Breslav
e81f38b6a8
JetStandardLibrary -> KotlinBuiltIns
2012-10-17 13:48:05 +04:00
Andrey Breslav
c719ae427a
JetStandardClasses -> KotlinBuiltIns
2012-10-17 13:48:05 +04:00
Natalia.Ukhorskaya
482fabfcce
Write ACC_DEPRECATED in byte codes.
...
#KT-2950 Fixed
2012-10-16 14:41:19 +04:00
Natalia.Ukhorskaya
d55a0fcacb
Move isDeprecated function to CodegenUtil
2012-10-16 14:41:18 +04:00
Alexander Udalov
8bfb2ddcce
Generate bridges for properties declared in constructor
...
#KT-2926 Fixed
#KT-2833 Fixed
2012-10-11 17:38:46 +04:00
Alexander Udalov
5bc9291d61
Refactor PropertyCodegen
...
1) Introduce AsmUtil.getModalityAccessFlag()
2) Inline private methods generateDefaultGetter() and generateDefaultSetter() not
to confuse them with anything else
3) Remove dead code in PropertyCodegen.gen(), assert that it never happens
2012-10-11 17:38:46 +04:00
Natalia.Ukhorskaya
78d22e9f81
KT-2823 TypeCastException has no message
...
#KT-2823 Fixed
2012-10-11 15:41:49 +04:00
Alexander Udalov
a31b748092
JavaElementFinder now correctly finds namespace$src$ classes
...
No new tests added
#KT-2839 Fixed
2012-10-10 18:11:11 +04:00