Mikhail Glukhikh
26a2319d7c
ControlFlowBuilder.getExitPoint() now can return null if nothing was found #KT-10823 Fixed
...
Also #EA-73355 Fixed
2016-01-28 16:19:54 +03:00
Michael Bogdanov
d4df7aaabc
Fix for KT-10659: Debugger: Evaluate Expression and Watches fail for inline function parameter passed by reference
...
#KT-10659 Fixed
2016-01-28 14:23:24 +03:00
Mikhail Glukhikh
069282cb6e
Regression test #KT-8277 Can't Reproduce
2016-01-28 13:33:29 +03:00
Mikhail Glukhikh
12b100c541
Regression test #KT-9529 Obsolete
2016-01-28 12:56:12 +03:00
Denis Zharkov
e69b115d9a
Remove wrong assertion
2016-01-28 08:36:24 +03:00
Denis Zharkov
11a96ee8c8
Introduce not null type parameter capability
...
Java nullability annotations may generate types that currently are not denotable in Kotlin:
class Java {
void <F> foo(@NotNull F f) {}
}
Type of given value parameter should be not nullable under any substitution:
String/String?/String! because of annotation contract.
NB: Currently there is no full analogues for such types in pure kotlin
2016-01-28 08:36:23 +03:00
Denis Zharkov
c26ca5e7ef
Turn on inference when resolving constructor super-calls
...
It's only needed when one of candidates has it's own type parameters
Otherwise it does not make sense as arguments are already specified
2016-01-28 08:35:18 +03:00
Denis Zharkov
6542d091ee
Support generic constructors defined in Java
...
#KT-10686 Fixed
#KT-10410 Fixed
2016-01-28 08:35:18 +03:00
Alexander Udalov
a02d1b75b8
Mark array constructors with 'inline'
...
To allow non-local returns from lambdas passed to them
2016-01-28 03:10:40 +03:00
Alexander Udalov
18238bd6f3
Minor, drop DescriptorRendererOptions#prettyFunctionTypes
2016-01-28 03:10:19 +03:00
Mikhail Glukhikh
7e26fa6002
One non-processed branch is now allowed for if statement #KT-10805 Fixed
...
Also #EA-64033 Fixed
2016-01-27 22:44:52 +03:00
Ilya Gorbunov
744a7a83f7
Cleanup RC deprecations in compiler and plugin.
2016-01-27 18:34:30 +03:00
Dmitry Petrov
c5fd496cc9
Fix KT-10805 for 'when'.
2016-01-27 17:07:20 +03:00
Dmitry Petrov
9db3440e72
Fix type inference issues for 'if' and 'when'.
...
Use 'expectedType' (when present) as an explicit type argument for a special construct call.
Unfortunately, this approach can't be used for elvis due to other elvis-related inference hacks.
Fixes KT-10807, KT-10811.
This also affects KT-6189: now we can infer proper type for 'if'.
If type inference for special call failed, and we found no type errors in sub-expressions,
report TYPE_INFERENCE_FAILED_ON_SPECIAL_CONSTRUCT error.
This (and the hack above) fixes KT-10809: code no longer compiles.
2016-01-27 17:07:20 +03:00
Mikhail Glukhikh
d94930149b
Warning for open members in objects
2016-01-26 19:04:17 +03:00
Mikhail Glukhikh
b1e3e1c32d
A few forgotten checks added for objects (function members effective visibility, multiple varargs) #KT-10753 Fixed
2016-01-26 19:04:08 +03:00
Mikhail Glukhikh
22c0ddaa48
Destructuring declaration initializer now cannot use extension componentX() on nullable #KT-7794 Fixed
2016-01-26 19:03:28 +03:00
Mikhail Glukhikh
850dc89b38
For-loop now cannot use extension iterator on a nullable #KT-7428 Fixed
2016-01-26 19:03:23 +03:00
Yan Zhulanow
3fa506fd45
"Inapplicable operator modifier" and "Inapplicable infix modifier" are now errors
2016-01-26 17:21:44 +03:00
Denis Zharkov
f560799bb7
Support top level wildcard types
...
#EA-73650 Fixed
2016-01-26 16:41:29 +03:00
Denis Zharkov
8ec63bd4dd
Use type arguments from supertype when resolving constructor delegation call
...
#KT-3357 Fixed
2016-01-26 13:53:45 +03:00
Stanislav Erokhin
210c9ab3db
Minor. Added regression tests for: KT-3927, KT-9522, KT-10036, KT-7440, KT-9682, KT-9808, KT-9517, KT-9810, KT-9345.
2016-01-25 19:13:32 +03:00
Stanislav Erokhin
d7438d9f2b
Add mock runtime to diagnostic tests.
...
Mock runtime contains function from file Standard.kt
2016-01-25 19:13:30 +03:00
Michael Bogdanov
874560df9d
Fix for KT-10715: Verify error on incrementing backing field from accessor
2016-01-25 16:56:57 +03:00
Michael Bogdanov
cf09949354
Fix for KT-10590: IllegalAccessError when protected getter of Java base class is accessed from lambda using property access syntax
2016-01-25 16:56:56 +03:00
Stanislav Erokhin
f688b1b786
Relax rules for type parameters in property receivers
2016-01-22 22:18:57 +03:00
Ilya Gorbunov
9a41e07ac0
Use IDEA 143.1960 built with master kotlin branch.
...
Remove tweaks required to bootstrap packages.
Restore non-star imports of kotlin.text.Charsets.
2016-01-22 22:06:22 +03:00
Denis Zharkov
6c0cd70a22
Introduce PureReifiable annotation
...
It prevents reporting unsafe substitution warning on expressions
like 'arrayOf(arrayOf(""))'
2016-01-22 19:17:22 +03:00
Denis Zharkov
d7e035fd9b
Serialize annotations on type parameters in builtins
2016-01-22 19:17:22 +03:00
Denis Zharkov
70dc5b5403
Prohibit use of captured type as argument for reified parameter
...
#KT-8093 Fixed
2016-01-22 19:17:22 +03:00
Denis Zharkov
751f66c656
Report warning on generic type as argument for reified parameter
...
#KT-6484 Fixed
2016-01-22 19:17:22 +03:00
Denis Zharkov
a5c13ce8cf
Approximate projections in SAM type when creating SAM adapter
...
Use the same approach as Java 8 applies to function types
(see non-wildcard parametrization in §9.9 of JLS)
#KT-6918 Fixed
2016-01-22 19:17:22 +03:00
Denis Zharkov
d87b13931d
Create special type for missing dependencies when resolving annotations
...
#KT-10748 Fixed
2016-01-22 19:17:22 +03:00
Mikhail Glukhikh
e9af4d25d0
Handling of try / catch / finally with 'Nothing' in all catch blocks #KT-10735 Fixed
2016-01-22 16:37:22 +03:00
Mikhail Glukhikh
859059d714
Bug fix: jump out of a loop inside if condition
2016-01-22 16:37:07 +03:00
Mikhail Glukhikh
3106a8508a
Front-end and back-end test for KT-7801
2016-01-22 16:37:00 +03:00
Mikhail Glukhikh
7ac55cefcb
Extra test with smart cast to 'T'
2016-01-22 16:36:57 +03:00
Mikhail Glukhikh
7870ad2445
DataFlowInfo converted to Kotlin, DataFlowInfoFactory introduced
2016-01-22 16:36:51 +03:00
Dmitry Petrov
f371e67ce8
PatternMatchingTypingVisitor:
...
rewrite type inference for 'when' using special constructs.
This fixes several type inference issues for 'when':
KT-9929, KT-9972, KT-10439, KT-10463
along with some other diagnostics-related issues.
2016-01-22 10:41:55 +03:00
Ilya Gorbunov
f5f5a2dcc1
Move progression final element test to stdlib tests.
...
Less values are tested for iteration not to timeout in js tests.
2016-01-22 05:54:38 +03:00
Ilya Gorbunov
f4822cd757
Fix testData in compiler: add collections and ranges package to fq-names.
2016-01-22 05:54:38 +03:00
Ilya Gorbunov
98e2d27c77
Resolve types from all builtin default packages in TypeUnifierTest
2016-01-22 05:54:38 +03:00
Ilya Gorbunov
c84cbfb36a
Allow to specify fq-names in expected resolve testData
2016-01-22 05:54:38 +03:00
Ilya Gorbunov
3262a4ddc2
LoadBuiltinsTest inspects three packages: kotlin, kotlin.collections and kotlin.ranges
2016-01-22 05:54:38 +03:00
Ilya Gorbunov
46a59b7550
Fix imports in java: temporary replace with star imports.
2016-01-22 05:54:38 +03:00
Alexander Udalov
0b7d2e3a68
Do not write old callable proto flags, use only new ones
2016-01-22 05:51:14 +03:00
Michael Bogdanov
bf16783fb7
Fix for KT-9591: Exception on inlining
...
#KT-9591 Fixed
2016-01-21 18:44:05 +03:00
Denis Zharkov
ba506170e9
Use 'mapToCallableMethod' for delegateTo signature calculation
...
#KT-9707 Fixed
2016-01-21 11:24:23 +03:00
Valentin Kipyatkov
3a7ed33de1
KT-10747 "Incompatible stack heights" when compiling call to Java setter with non-void return type using property syntax
...
#KT-10747 Fixed
2016-01-21 10:48:47 +03:00
Alexander Udalov
8fe964f269
Resolve array access RHS always as the last argument of the call
...
Also do not attempt to match any of the arguments in the brackets with the last
parameter of the 'set' method
#KT-10633 Fixed
2016-01-21 00:36:35 +03:00