Alexander Udalov
8dae1b62dd
Add CharSequence.subSequence
...
This is done primarily for JVM interoperability, otherwise it's impossible to
inherit from CharSequence there. On JS subSequence at the moment just invokes
substring.
#KT-5956 Fixed
2014-11-27 20:38:19 +03:00
Alexander Udalov
4d95bcfc7e
Rename CharSequence.get to charAt
...
This is done for JVM interoperability. There's still a member function
String.get() and an extension function "get" on CharSequence
#KT-1730 Fixed
#KT-5389 Fixed
2014-11-27 20:38:18 +03:00
Alexander Udalov
a7b88e9485
Make CharSequence.length a function instead of property
...
And String.length as well.
This is done for JVM interoperability: java.lang.CharSequence is an open class
and has a function 'length()' which should be implemented in subclasses
somehow.
A minor unexpected effect of this is that String.length() is now a compile-time
constant (it wasn't such as a property because properties are not supported in
compile-time constant evaluation)
#KT-3571 Fixed
2014-11-27 20:38:17 +03:00
Denis Zharkov
3b2d0b88f3
Supported nested reified parameter declarations
...
Also switched to using type names as identifiers instead of their
indices
2014-11-27 15:15:04 +04:00
Denis Zharkov
080610c208
Wrap parentCodegen before generating from inline
2014-11-27 14:58:04 +04:00
Denis Zharkov
02be1063c1
Do not report a warning on an inline function with a reified parameter
...
#KT-6273 Fixed
2014-11-27 13:49:17 +04:00
Denis Zharkov
f7d1bc5931
Diagnostics test: array creation of non-reified TP
...
#KT-1370 Fixed
2014-11-27 13:49:17 +04:00
Svetlana Isakova
724f2e6e7b
KT-6081 Chained generic method calls: wrong type inference
...
#KT-6081 Fixed
2014-11-27 02:28:10 +03:00
Alexander Udalov
a6d759ff96
Minor, add test for obsolete issue
...
#KT-3587 Obsolete
2014-11-25 23:16:56 +03:00
Alexander Udalov
1f68c94ce6
Fix several bugs in serialization of inner generic classes
...
- Interner was working incorrectly with parents
- nested classes were serialized in codegen out of any context
#KT-5660 Fixed
2014-11-25 23:16:26 +03:00
Stanislav Erokhin
7fa93c4e90
Added support space symbols for diagnostic parameters in DiagnosticTest
2014-11-24 15:38:56 +03:00
Michael Bogdanov
8fc3a37989
Fix for KT-6312: Compiler crashes accessing inherited property of class object
...
#KT-6312 Fixed
2014-11-24 13:10:59 +03:00
Andrey Breslav
0eee83b6ec
Lazy logs removed
2014-11-21 18:59:45 +03:00
Svetlana Isakova
b71260f54e
Moved tests
...
that are used both for codegen & diagnostics to codegen/box/diagnostics
2014-11-21 14:02:45 +03:00
Svetlana Isakova
2a83053355
Updated lazy log tests
2014-11-21 14:02:45 +03:00
Svetlana Isakova
9cd5f51b88
Added test for KT-4711
...
Error type with no error reported from type inference
#KT-4711 Fixed
2014-11-21 14:02:43 +03:00
Svetlana Isakova
0719297d8f
Uncommented test when extensions are called for nested calls
2014-11-21 14:02:42 +03:00
Svetlana Isakova
5d0f004292
Fix for 'if' special construct type
...
If one branch has Nothing type (contains 'return', etc.),
return result type of corresponding resolved call (it may depend on smart casts)
#KT-6242 Fixed
2014-11-21 14:02:42 +03:00
Svetlana Isakova
36fd8a1a08
Set the right call operation node for implicit invoke
...
Make a call for implicit invoke safe if an outer call is safe
2014-11-21 14:02:42 +03:00
Svetlana Isakova
7f62675665
Fixed error reporting for special constructions (if, elvis)
...
Track whether an error was reported for sub expressions (like 'if' branches) or it should be reported for the whole expression
#KT-6189 Fixed
2014-11-21 14:02:42 +03:00
Svetlana Isakova
8109b1f997
DONT_CARE placeholder can be nullable after a substitution
...
Interpret it as DONT_CARE as well (not as an error type where an error was generated before)
#KT-6175 Fixed
2014-11-21 14:02:41 +03:00
Svetlana Isakova
8ad017c071
Extracted 'deparenthesizeArgument', used it where necessary
...
#KT-6176 Fixed
2014-11-21 14:02:41 +03:00
Michael Bogdanov
e2826a47e1
Remove "operation" method from StackValue.kt;
...
Compilation fix: remove static import to kotlin from AsmUtil
2014-11-21 13:59:44 +03:00
Michael Bogdanov
3a70992d27
Lazy intrinsic generation
...
#KT-6241 Fixed
2014-11-21 13:59:43 +03:00
Michael Bogdanov
ec649e83c3
Don't skip receiver with side effects on static calls
...
#KT-6278 Fixed
2014-11-20 10:20:33 +03:00
Michael Bogdanov
5a8944085a
Fix default property setter generation
2014-11-20 10:20:32 +03:00
Michael Bogdanov
2cc9d8e29b
Support platformStatic for properties
...
#KT-5766 Fixed
2014-11-20 10:20:31 +03:00
Michael Bogdanov
5412a67d29
Generate static backing fields for properties in object
...
#KT-4973 Fixed
2014-11-20 10:20:31 +03:00
Michael Bogdanov
af998101b3
Fix for KT-4206: NoSuchFieldError with class objects
...
#KT-4206 Fixed
2014-11-20 10:20:12 +03:00
Michael Bogdanov
7d1fd47569
Rewrite local var increment optimization
2014-11-20 10:20:12 +03:00
Michael Bogdanov
855bf772ca
Prefix inc refactoring
2014-11-20 10:20:12 +03:00
Michael Bogdanov
c7b1c0fe52
Store refactoring
...
#KT-1213 Fixed
2014-11-20 10:20:11 +03:00
Stanislav Erokhin
caf44969a4
Add support for check diagnostic parameters in test.
2014-11-17 17:45:06 +03:00
Stanislav Erokhin
65c9ea2465
Fix variance problems.
2014-11-17 17:45:05 +03:00
Stanislav Erokhin
c10c1ad7f6
Fix wrong containingDeclaration for property type parameter.
2014-11-17 17:45:05 +03:00
Stanislav Erokhin
b7c473f59e
Update lazy.log files
2014-11-17 17:45:01 +03:00
Stanislav Erokhin
2033042d33
Make candidates lazy in ResolutionTask & ResolutionTaskHolder
2014-11-17 17:38:52 +03:00
Alexander Udalov
93696ff9bd
Make Array.indices extension property, move to stdlib
...
This is not something that needs to be intrinsified. Note that compiler
optimizations are still possible and the fact whether 'indices' is a member or
an extension is irrelevant to the optimizer
2014-11-17 15:20:44 +03:00
Alexander Udalov
128c938965
Make Array.size() a function instead of a property
...
Also add a deprecated extension property to help migration. This is done to
unify getting size of arrays and collections
2014-11-17 15:02:38 +03:00
Pavel V. Talanov
40addaed13
Fix wrong deserialization order
...
For case when property and function have the same name or
extension and non-extension member have the same name
2014-11-14 17:09:14 +03:00
Pavel V. Talanov
d2cfcfa659
Fix test data after changes to renderer and descriptors
2014-11-14 17:09:05 +03:00
Pavel V. Talanov
8016766b23
Extension/non-Extension members are deserialized in correct order
2014-11-14 16:18:33 +03:00
Pavel V. Talanov
028e9105af
Add test for enum class with inner classes
2014-11-14 16:18:32 +03:00
Pavel V. Talanov
eba5843468
Test order of enum entries in deserialized classes
2014-11-14 16:18:28 +03:00
Pavel V. Talanov
01cf60b834
Separate tests for ordering of deserialized members
2014-11-14 16:18:27 +03:00
Denis Zharkov
8d47bdfebb
Made <T> in arrayOfNulls() reified #KT-5651 Fixed
2014-11-13 20:56:10 +03:00
Denis Zharkov
eec4b7094c
Added diagnostic test for Array<T> instances usage
...
when T is not reified
2014-11-13 20:56:10 +03:00
Denis Zharkov
73ca75cc0b
Fixed wrong constructor arguments order
2014-11-13 20:56:10 +03:00
Denis Zharkov
a8ca39754c
Supported creating varargs of reified type parameter
2014-11-13 20:56:10 +03:00
Denis Zharkov
28dc84344c
Prohibit ''Nothing'' substitution of reified TP
2014-11-13 20:56:09 +03:00