Michael Nedzelsky
618a8622a1
VirtualFileFinderFactory: introduce JvmVirtualFileFinderFactory, JsVirtualFileFinderFactory
2015-05-26 05:03:51 +03:00
Michael Bogdanov
8cf21f24cd
Fix for KT-7792: Invalid class file generation: java.lang.ClassFormatError: Invalid length 65522 in LocalVariableTable in class file
...
#KT-7792 Fixed
2015-05-25 17:06:18 +03:00
Pavel V. Talanov
e4c242e66b
Remove direct usages of ModuleDescriptor#getPackageFragmentProvider()
2015-05-25 13:00:16 +03:00
Natalia Ukhorskaya
5edc25d2ba
Debugger: step into default property getter/setter
...
#KT-7287 Fixed
2015-05-21 19:17:31 +03:00
Zalim Bashorov
ecb824386e
Optimize memory usage in SlicedMapImpl (used in BindingContext)
...
In short:
before these changes: Map<SlicedMapKey<slice, key>, value>
after: Map<key, Map<slice, value>> // where for nested Map used lightweight storage UserDataHolder
Before these changes it stored map from SlicedMapKey to value.
Where SlicedMapKey created for each record and store slice and key.
And now it sored map from key to UserDataHolder.
UserDataHolder store map from slice to value.
2015-05-21 18:53:56 +03:00
Yan Zhulanow
b2220ca98a
Annotation collector compiler plugin
2015-05-21 15:48:06 +03:00
Michael Bogdanov
5bca1d3c8f
Added dianostic error for non-local return on disabled inlines,
...
Render bytecode diagnostics in BytecodeToolWindow
#KT-5584 Fixed
2015-05-21 10:06:03 +03:00
Michael Bogdanov
ef4981b0ef
Report error on indirect inline cycles
2015-05-21 10:06:02 +03:00
Michael Bogdanov
319c5aec60
Fix for KT-7557: NoSuchMethodError when capturing receiver in object expression
...
#KT-7557 Fixed
#KT-7769 Fixed
2015-05-21 10:06:01 +03:00
Pavel V. Talanov
cfdb1f4ec3
Refactor creation of ModuleDescriptor
...
Add storageManager to ModuleDescriptorImpl (to be used later)
Extract ModuleParameters to hold default imports and platform class map
Introduce MutableModuleContext to simplify module creation code
2015-05-20 19:45:50 +03:00
Denis Zharkov
e98b9ea84e
Save annotations of lambda on SAM's method
...
Also add tests checking that annotations on 'invoke' methods of common lambdas are saved properly
#KT-6932 Fixed
2015-05-20 09:24:57 +03:00
Denis Zharkov
fd4946e552
Annotate $default-method with same annotations as original
...
#KT-6930 Fixed
2015-05-20 09:24:57 +03:00
Mikhail Glukhikh
1edce76d01
Fix for EA-68569 with a test. #EA-68569 Fixed
2015-05-19 13:55:28 +03:00
Michael Bogdanov
0cb4b8f8d4
Fix outer info generation for scripts
2015-05-19 10:34:34 +03:00
Mikhail Glukhikh
fdf0ea5546
Enum warnings fixed: deprecated delimiters, short super constructors, both in project and in libraries
2015-05-18 16:08:16 +03:00
Michael Bogdanov
5cb9671803
Support inlining in scripts and outer expression capturing
...
#KT-7744 Fixed
2015-05-18 14:47:57 +03:00
Valentin Kipyatkov
67cfd9d516
KT-4909 Smart completion does not work for named arguments
...
KT-7668 Named argument completion does not work after vararg
#KT-4909 Fixed
#KT-7668 Fixed
2015-05-16 17:09:51 +03:00
Evgeny Gerashchenko
0498bd7739
KT-7587 Overloads are not generated during partial compilation of package
...
#KT-7587 fixed
2015-05-14 21:51:08 +03:00
Evgeny Gerashchenko
ca883d8117
Green code.
2015-05-14 21:51:08 +03:00
Alexander Udalov
b881827b74
Use descriptors instead of PSI in ImplementationBodyCodegen
2015-05-14 18:40:48 +03:00
Michael Bogdanov
99cad4b43f
Support default method invocation via super
...
#KT-5970 Fixed
2015-05-13 14:52:18 +03:00
Michael Bogdanov
d6964525b2
Fix for KT-7490: Bad bytecode generated by delegates and lambdas
...
#KT-7490 Fixed
2015-05-12 12:06:11 +03:00
Natalia Ukhorskaya
9108d87a57
Add warning for division by zero:
...
#KT-5529 fixed
2015-05-07 15:41:37 +03:00
Natalia Ukhorskaya
16b17b9e94
Minor: rename
2015-05-07 13:23:59 +03:00
Natalia Ukhorskaya
8c99183970
Write local functions to localVariables table
2015-05-07 13:23:03 +03:00
Michael Bogdanov
49f063522c
Inline util functions renaming
2015-05-05 12:47:57 +03:00
Michael Bogdanov
e0aa64b8d2
Support functional expression in non-local returns
2015-05-05 12:47:56 +03:00
Denis Zharkov
02659ca22d
Adjust project code to new labels syntax
2015-04-30 10:16:42 +03:00
Dmitry Jemerov
cce1be3892
rename JetClass.isTrait() to isInterface(); rename ClassKind.TRAIT to INTERACE
2015-04-29 16:50:19 +02:00
Nikolay Krasko
90cdb19324
Add origin for generated jvm overloads and tweak equals methods to distinguish them
...
- KT-7586 Strange navigation issue
#KT-7586 Fixed
2015-04-29 15:20:31 +03:00
Alexander Udalov
0732b78853
Serialize/deserialize annotations on types
2015-04-29 01:03:55 +03:00
Mikhail Glukhikh
054e85338d
Fix for EA-68153 (incorrect nullability)
2015-04-28 17:37:56 +03:00
Pavel V. Talanov
ac2cb9af74
Remove some usages of KotlinBuiltIns.getInstance()
...
Introduce DeclarationDescriptor.builtIns extension to get builtins where descriptors are available
Introduce various utilities in KotlinBuiltIns to check for primitive types and get fq names of builtins
2015-04-28 12:49:34 +03:00
Alexander Udalov
167942f4bb
Add constant "invoke" to OperatorConventions
2015-04-28 00:51:50 +03:00
Alexander Udalov
94eac98500
Reformat some code, optimize imports, remove unused
...
Mostly in JVM codegen intrinsics
2015-04-28 00:35:53 +03:00
Natalia Ukhorskaya
47bc89775d
Minor: add message for assert EA-64788
2015-04-27 18:43:48 +03:00
Michael Bogdanov
39fabda611
New diagnostic for Java default method call via super in trait
2015-04-24 18:54:09 +03:00
Michael Bogdanov
0854c601b4
Fix non local returns to functional expressions
2015-04-24 18:54:09 +03:00
Alexander Udalov
d2cd7b00bb
Map intrinsic companion objects in JavaToKotlinClassMap
...
Get rid of multiple usages of IntrinsicObjects where JavaToKotlinClassMap was
already used, simplify code, and support loading of *CompanionObject as Kotlin
built-in companions from Java code.
Also fix a small bug where Boolean was considered a class with an intrinsic
companion in IntrinsicObjects, although it was not
2015-04-24 02:09:26 +03:00
Alexander Udalov
a59fa5015e
Merge KotlinToJavaTypesMap into JavaToKotlinClassMap
...
Also use this new Kotlin->Java mapping in RuntimeTypeMapper instead of
inheriting directly from JavaToKotlinClassMapBuilder
2015-04-24 02:09:05 +03:00
Alexander Udalov
deff3968db
Simplify KotlinToJavaTypesMap, use only one map
2015-04-24 02:09:03 +03:00
Alexander Udalov
23a792aa44
Somewhat simplify mapping of JVM primitive types
2015-04-24 02:09:03 +03:00
Alexander Udalov
1a48b5750e
Minor, remove unnecessary unwrapping of VariableAsFunctionResolvedCall
...
Almost all of its methods delegate to functionCall already
2015-04-23 22:09:02 +03:00
Alexander Udalov
07c2442405
Make $default methods non-private, avoid generating accessors for them
...
#KT-5786 Fixed
2015-04-23 22:09:02 +03:00
Michael Bogdanov
df2900c4e4
Introduced ParameterDescriptor type
2015-04-23 15:41:59 +03:00
Michael Bogdanov
53b8a1d56e
Fix for KT-7544: Backend fails when inlining nested calls with reified type parameter and default value parameter
...
#KT-7544 Fixed
2015-04-23 15:41:59 +03:00
Ilya Gorbunov
526348b207
Implement toTypedArray as non-intrinsic.
...
Remove unused intrinsic method.
2015-04-23 14:10:42 +03:00
Evgeny Gerashchenko
f5677d8424
Converted JetPsiUtil.getElementTextWithContext() to Kotlin extension function.
2015-04-22 14:10:00 +03:00
Mikhail Glukhikh
e64dab0ae9
Review fixes after automatic code analysis
2015-04-21 15:29:34 +03:00
Mikhail Glukhikh
27625b04e1
Refactoring of JetTypeInfo / BindingContext. Loop data flow analysis corrected.
...
Now BindingContext includes expression type info instead of jump out possible, data flow info and expression type.
getType() was added into BindingContext, getType() and recordType() were added into BindingTrace.
JetTypeInfo now includes also jump possible flag and jump point data flow info.
Old TypeInfoWithJumpInfo deleted.
TypeInfoFactory introduced to create JetTypeInfo instances.
A pack of extra tests for break / continue in loops added.
2015-04-21 15:29:07 +03:00