Commit Graph

973 Commits

Author SHA1 Message Date
Svetlana Isakova cd3892e251 rename deparenthesize -> deparenthesizeWithNoTypeResolution 2012-11-16 15:32:59 +04:00
Nikolay Krasko 2bc57ee8a2 More logging for EA-40352 2012-11-14 18:19:33 +04:00
Natalia.Ukhorskaya 31b28cec92 Default setter for property: skip receiver argument 2012-11-13 19:03:20 +04:00
Natalia.Ukhorskaya ba2eab526a Extension properties in class: don't put receiver on stack for GETFIELD/PUTFIELD instruction
#KT-3031 Fixed
2012-11-13 19:03:20 +04:00
Andrey Breslav b2b5ccefbd Switching from log/learn to reportOutput/add 2012-11-13 13:45:45 +04:00
Andrey Breslav ef403cc91a Alternative methods for progress reporting 2012-11-13 13:45:45 +04:00
Andrey Breslav 1e3b334f15 Source files made available where "emitting" is reported 2012-11-13 13:45:45 +04:00
Andrey Breslav cca21e96c1 Progress class moved to jvm backend 2012-11-13 13:45:44 +04:00
Evgeny Gerashchenko 3fce07b83a Arranged generator classes into packages to make it possible to compile GenerateInjectors separately. 2012-11-12 20:40:23 +04:00
Evgeny Gerashchenko 8d7e79c806 Renamed & moved AllInjectorsGenerator. 2012-11-12 19:54:22 +04:00
Natalia.Ukhorskaya b5a3486131 Back-end: correct indexes of local variables for double and long
#KT-3033 Fixed
2012-11-12 15:03:54 +04:00
Natalia.Ukhorskaya 94fbf2bdf4 Add labels for extension properties
#KT-2824 Fixed
2012-11-12 13:23:00 +04:00
Andrey Breslav 3a96559ce2 TipsManager moved to idea module 2012-11-09 21:56:29 +04:00
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