Alexander Udalov
9e8c51f7d3
Minor, delete pointless field annotations
2015-06-04 23:08:20 +03:00
dnpetrov
50ea67ba13
KT-5524 Support [platformName] annotation for class members
...
@platformName is now supported for final non-overriding class member functions
(including property accessors).
Front-end provides diagnostics for inapplicable annotation cases.
Code generation updated:
- ignore kotlin.platform.platformName annotation for Java class methods;
- bridges generation generates proper JVM declarations in case of methods renamed with @platformName.
@platformName-related tests added.
#KT-5524 Fixed
2015-06-04 17:54:08 +03:00
Evgeny Gerashchenko
6403ef39eb
KT-7521 Compilation problem of dependent modules with different jdks
...
#KT-7521 fixed
2015-06-04 17:50:13 +03:00
Denis Zharkov
9802931a90
Remove variables with empty ranges from local vars table
...
As their ranges may intersect after dead code elimination that leads to VerifyError
2015-06-04 16:11:02 +03:00
Denis Zharkov
310babefdf
Minor, Rename InsnStream -> InsnSequence
2015-06-04 16:11:02 +03:00
Denis Zharkov
8da3f53404
EA-53937: Drop failing assertion about no-name val in annotation
2015-06-04 16:11:02 +03:00
Michael Bogdanov
2377a10007
Fix labeling processing on inlining: suport labeled literals
...
#KT-7273 Fixed
2015-06-03 14:42:57 +03:00
Denis Zharkov
70dbbd8fda
Resolve constructors declared in traits and objects
...
It prevents exceptions and produces less red code
#EA-68667 Fixed
2015-06-02 14:07:49 +03:00
Mikhail Glukhikh
969993bd09
Fix for EA-68871 #EA-68871 Fixed
2015-06-02 10:56:13 +03:00
Alexander Udalov
596d378962
Fix abstract method error: implement arity in function references
2015-06-01 19:23:09 +03:00
Alexander Udalov
28addcf8e7
Do not generate annotations of method parameters on its $default synthetic method
...
#KT-7892 Fixed
2015-06-01 19:23:08 +03:00
Alexander Udalov
4f77b44ac3
Minor, move constant to the proper place
2015-06-01 19:23:08 +03:00
Alexander Udalov
df4d5a3ae2
Fix initialization order of enum entries and companion
...
#KT-5761 Fixed
2015-06-01 19:23:08 +03:00
Evgeny Gerashchenko
88e8988b18
Stabilized order of bytecode for when mappings initialization.
2015-06-01 19:02:13 +03:00
Evgeny Gerashchenko
7de531fe09
Fixed package proto for circular dependencies. Case when package is present in different modules which depend on each other. We should generate separate package facades for this case.
2015-06-01 19:02:11 +03:00
Valentin Kipyatkov
8fd6a64be9
Refactored methods for val/var in PSI
2015-06-01 18:23:34 +03:00
Valentin Kipyatkov
eef0e8e447
JetBlockExpression.getStatements() returns List<JetExpression> instead of List<JetElement>
2015-05-29 14:22:56 +03:00
Zalim Bashorov
68f851cbdc
Move JvmCodegenUtil#getDelegationConstructorCall to common place (BindingContextUtils)
2015-05-28 10:30:54 +03:00
Michael Bogdanov
e20a5121c7
Support private package properties in inline functions
2015-05-27 18:09:40 +03:00
Dmitry Jemerov
1188e57597
rename @overloads annotation to @jvmOverloads
2015-05-27 12:23:08 +02:00
Alexander Udalov
48b18f18d3
Restore explicit imports of Kotlin function types in Java
...
This is a follow-up to 738a84e259 and
d4965a4f3e . Optimize imports in all files
affected in those commits, drop temporary _.kt
2015-05-26 18:46:27 +03:00
Mikhail Glukhikh
4570872bfd
Postfix expression code generation fixed as per KT-7561.
...
A set of tests for KT-7561 on codegen side, including exotic inc() functions().
#KT-7561 Fixed.
2015-05-26 15:20:37 +03:00
Alexander Udalov
9ba6d91e2e
Prepare JVM runtime for support of reflection on functions
...
Introduce abstract class FunctionReference, which is supposed to be a
superclass for all anonymous classes generated for function references. Each
anonymous subclass will have statically-generated symbol info, which will be
used by reflection to locate the symbol
2015-05-26 15:05:01 +03:00
Alexander Udalov
9aeae7ddc6
Extract FunctionReferenceGenerationStrategy to top level
2015-05-26 15:05:00 +03:00
Alexander Udalov
49004a8b8e
Conform functions to extension functions and vice versa
...
#KT-5989 Fixed
2015-05-26 15:04:56 +03:00
Alexander Udalov
4141e0a8df
Introduce fictitious numbered Function class descriptors
2015-05-26 15:04:54 +03:00
Alexander Udalov
27ed098467
Introduce kotlin.jvm.internal.Lambda, superclass for all lambdas
...
It has its arity precomputed, as opposed to the future KFunctionImpl inheriting
from FunctionImpl, for which the computation of arity can take some time and so
it shouldn't be passed in the constructor and saved as a field
2015-05-26 15:04:54 +03:00
Alexander Udalov
86ecb423f6
Drop generic parameters from FunctionImpl classes in JVM runtime
...
They are not used in any way but cause some complex code in JVM back-end
2015-05-26 15:04:53 +03:00
Alexander Udalov
d4965a4f3e
Add temporary imports for disambiguation
2015-05-26 15:04:52 +03:00
Alexander Udalov
738a84e259
Temporary hack to migrate functions to package kotlin.jvm.functions
...
Add a file in package 'kotlin.jvm.functions' to the project and replace
explicit imports of functions 'kotlin.Function{n}' to two imports 'kotlin.*'
and 'kotlin.jvm.functions.*', so that the codebase can be compiled both by the
old and by the new compiler
2015-05-26 15:04:34 +03:00
Alexander Udalov
7baa7a72e2
Avoid extension functions in Java-facing code in project
...
This is to workaround the coming functions / extension functions global
refactoring and move
2015-05-26 14:27:42 +03:00
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