Mikhail Glukhikh
46f4191185
Unnecessary safe call is now reported in CallExpressionResolver, removed code duplication for safe call receivers
...
See also KT-10175
2015-11-25 16:19:48 +03:00
Dmitry Petrov
da90c21284
Warn about comma-separated conditions in when without argument.
...
See KT-5143.
2015-11-25 15:39:23 +03:00
Mikhail Glukhikh
b9e9c47b28
Using of enum entries as types is now forbidden #KT-5401 Fixed
2015-11-25 13:33:16 +03:00
Michael Bogdanov
3da463be27
Fix for KT-10137: Internal error: couldn't inline method call on lambda taking extension function parameter
...
#KT-10137 Fixed
2015-11-24 16:32:06 +03:00
Michael Bogdanov
d4369c1df9
Keep inline transformation invariant: all captured parameters stored in topmost lambda/object
...
Fix for KT-8668: java.lang.ClassFormatError: Duplicate field name&signature (based on property access)
#KT-8668 Fixed
2015-11-24 16:32:05 +03:00
Alexey Sedunov
b75665a96a
Misc: Do not use resolved call of outer expression if current call expression has no callee
...
#KT-10105 Fixed
2015-11-24 14:03:42 +03:00
Dmitry Petrov
931463af0d
- Fix code generation for inlined String::plus
...
#KT-10131 Fixed.
- Make extra factory methods in IntrinsicMethod protected.
This ensures that any of them can be properly overridden.
2015-11-24 12:09:34 +03:00
Michael Nedzelsky
c80c33efb6
add kjsm option for kotlin js command line compiler
2015-11-23 22:32:32 +03:00
Mikhail Glukhikh
dc60c62781
Enum.values is now deprecated but Enum.values() is no more deprecated
2015-11-23 17:29:36 +03:00
Mikhail Glukhikh
1c609663a4
Private setters are now deprecated for open properties
2015-11-23 17:29:23 +03:00
Mikhail Glukhikh
74976911a2
Diagnostic for "private setter in abstract property" renamed
2015-11-23 17:29:20 +03:00
Mikhail Glukhikh
284c1b2ec5
Local sealed classes are deprecated
2015-11-23 17:29:16 +03:00
Dmitry Petrov
048e96ef6a
Fix safe call code generation for ranges.
2015-11-23 10:34:08 +03:00
Ilya Gorbunov
21f509511c
Fix CharSequence parameter names in testData
2015-11-21 07:09:05 +03:00
Ilya Gorbunov
ab3e6258ac
Update testdata for LoadBuiltinsTest
2015-11-21 07:09:02 +03:00
Mikhail Glukhikh
f81a5c06ea
Protected in allowed in companion objects but forbidden in other objects, relevant test fixes
2015-11-20 16:32:59 +03:00
Mikhail Glukhikh
c84b22396b
Diagnostic 'final function with no body' deleted because it's redundant
2015-11-20 15:43:25 +03:00
Mikhail Glukhikh
b5610eebae
Diagnostic 'final property in interface' deleted because it's redundant
2015-11-20 15:43:22 +03:00
Mikhail Glukhikh
cd1b58f2eb
Final in interfaces: deprecation ---> error + relevant test fixes
2015-11-20 15:43:19 +03:00
Mikhail Glukhikh
4e44466cf9
Exposed visibility deprecation warnings made errors + relevant test fixes
2015-11-20 15:21:01 +03:00
Pavel V. Talanov
dbd49c37c1
Psi: Introduce KtScriptInitializer, a separate entity for script initializers which are quite a bit different from class initializers
2015-11-19 22:57:07 +03:00
Pavel V. Talanov
bdc64f322c
Add script codegen tests with package statements
...
Tests codegen annotating visitor
2015-11-19 22:57:03 +03:00
Pavel V. Talanov
ad58617753
Script refactoring, codegen tests: change test data according to semantics change
...
Add some new tests for uncovered cases
2015-11-19 22:57:01 +03:00
Pavel V. Talanov
2b955bc6ec
Script refactoring, frontend tests: changes according to semantic changes in scripts
...
Add checker tests for scripts
2015-11-19 22:56:57 +03:00
Pavel V. Talanov
daa1a08213
Script refactoring, parser: wrap statements in script as if they are init blocks of a class
2015-11-19 22:56:54 +03:00
Dmitry Petrov
42b587b0d5
Prohibit callable references to annotation class constructors.
...
See KT-4391.
2015-11-19 18:31:20 +03:00
Yan Zhulanow
39e6c6e500
Android Extensions: fix cli tests
2015-11-19 01:35:58 +03:00
Yan Zhulanow
3d8df88ab2
Fix some misc tests (Android variants)
2015-11-19 01:35:58 +03:00
Mikhail Glukhikh
3a4f6d8226
Smart cast impossible on when subject is no more recorded #KT-10061 Fixed
2015-11-18 18:02:59 +03:00
Alexander Udalov
e50eb50299
Make getNestedTypeVariables() an utility
2015-11-18 16:40:44 +03:00
Dmitry Petrov
7b432c878a
Diagnostics improvements for corner cases
...
(class/package qualifier in non-qualifier position).
2015-11-18 16:27:21 +03:00
Dmitry Petrov
9856af48ca
Drop createQualifier: testData update
2015-11-18 14:35:53 +03:00
Dmitry Petrov
b532fa2bbf
Properly resolve values in 1st qualifier part (see implicitReceiverProperty test).
...
Look into QUALIFIER for left-most "unrolled" qualified expression
in CallExpressionResolver#getQualifiedExpressionTypeInfo.
Drop some unused functions.
2015-11-18 14:35:53 +03:00
Dmitry Petrov
eef8c7ae09
Move auxiliary methods for QualifierReceiver resolution to a separate file
...
(to be refactored later).
Get rid of duplicate type usage validation.
2015-11-18 14:35:53 +03:00
Dmitry Petrov
3556f9751e
Reuse package/class qualifier prefix resolution for qualified expression resolution.
2015-11-18 14:35:52 +03:00
Nikolay Krasko
2ff0b13808
Run psi check on light classes from compiled Kotlin
2015-11-18 13:34:25 +03:00
Dmitry Jemerov
9e0ec80c6a
Merge branch 'KT-1396' of https://github.com/mcgee/kotlin into mcgee-KT-1396
2015-11-17 18:49:44 +01:00
Dmitry Jemerov
bf35099e0c
use "destructuring declarations" term instead of "multi-declarations"
2015-11-17 18:43:26 +01:00
Anton Sukhonosenko
bec6621654
#KT-1396 Fixed
2015-11-17 19:33:18 +03:00
Mikhail Glukhikh
fe13f39de9
Use of uninitialized variables in lambdas / object literals / local functions is forbidden now #KT-4475 Fixed
...
Local declarations CFA: variable initialization information before them is now taken into account
2015-11-17 18:21:09 +03:00
Denis Zharkov
fa99ea1e98
Generate type-safe barrier in method body
...
In cases when signature of special bridge is the same as current method,
but type is not 'Any?'.
Also there is tiny optimization:
only null check needed if value parameter type is mapped to Object,
but it's not nullable.
#KT-9973 Fixed
2015-11-17 16:27:02 +03:00
Denis Zharkov
1f704e0c4d
Minor. Split BytecodeText tests about special builtin bridges
2015-11-17 16:27:02 +03:00
Denis Zharkov
3b2719735e
Setup default values for type-safe bridges
...
#KT-9973 In Progress
2015-11-17 16:27:01 +03:00
Denis Zharkov
f5a086140e
Refine special bridge generating rule
...
Generate special bridge even in case current class has Kotlin superclass implementing
this builtin method, but that super class was generated without special bridge
(e.g. because it would have the same signature)
#KT-9901 Fixed
2015-11-17 15:41:49 +03:00
Denis Zharkov
abf7ae547e
Minor. Move tests
2015-11-17 15:41:48 +03:00
Mikhail Glukhikh
811ba8110f
Implicit receiver smart casts implementation and highlighting
2015-11-17 10:26:42 +03:00
Valentin Kipyatkov
2e2dfcb4a0
"invoke" from function types do not have any meaningful parameter names
2015-11-16 18:24:37 +03:00
Mikhail Glukhikh
dd43674426
Data class must have at least one argument is reported on constructor parameter list now, if any #KT-9999 Fixed
2015-11-16 10:45:54 +03:00
Mikhail Glukhikh
86c37deaee
Overriden setter now cannot weaken visibility #KT-3369 Fixed
2015-11-16 10:45:21 +03:00
Mikhail Glukhikh
02fb19c3ea
Inner classes are no more allowed inside enum entries #KT-9750 Fixed
...
Forbidden use-case deleted from codegen tests
2015-11-16 10:44:20 +03:00