Denis Zharkov
ce8add2802
Fix common supertype calculation
...
Use star-projections instead of 'out Any?' in corner cases
#KT-11468 Fixed
2016-03-18 10:12:00 +03:00
Denis Zharkov
d9a6d15fe4
Add tests for obsolete issues
...
#KT-4628 Obsolete
#KT-3897 Obsolete
#KT-3898 Obsolete
#KT-7523 Obsolete
2016-03-16 20:23:36 +03:00
Denis Zharkov
85329e59ca
Remove nullability annotations attached to TYPE_USE position in tests
...
They do not work anyway by many reasons:
- 'org.jetbrains.annotations.*' are not TYPE_USE targeted
- raw type with annotated arguments is something very weird and should be
investigated
2016-03-16 20:23:00 +03:00
Denis Zharkov
e96024017f
Move and fix tests on typeEnhancement with TYPE_USE annotations
2016-03-16 20:22:59 +03:00
Mikhail Glukhikh
a830d80dac
Values equality no more provides guarantee for their types equality (for open types or types with overridden equals) #KT-11280 Fixed
2016-03-15 11:01:39 +03:00
Alexander Udalov
117d0bcf03
Fix multiple exceptions related to subtypes of function types
...
The main change is in FunctionsTypingVisitor#visitLambdaExpression, where we
incorrectly allowed subtypes of function types to be expected type during
resolution of lambdas
Also see EA-70485
#KT-9820 Fixed
2016-03-14 19:24:17 +03:00
Alexander Udalov
33ff1e1e29
Use correct function to check for function type in InlineParameterChecker
...
There's no use of noinline/crossinline modifiers on parameters of _subtypes_ of
function types
#KT-11411 Fixed
2016-03-14 19:24:08 +03:00
Mikhail Glukhikh
569a5888ff
do...while (true) is now considered infinite loop in CFA #KT-3896 Fixed
...
Also #KT-3883 Fixed
Also #KT-4986 Fixed
2016-03-14 16:13:14 +03:00
Mikhail Glukhikh
7232c5ccc1
Minor: FILE directives fixed in two tests
2016-03-14 15:49:50 +03:00
Mikhail Glukhikh
f76efb68f2
Strictfp on a class is now a warning #KT-11109 Fixed
2016-03-12 13:17:11 +03:00
Pavel V. Talanov
597c571f25
Fix diagnostic range when some qualifier is unresolved in "@a.b.c.Anno"
...
#KT-7747 Fixed
2016-03-11 15:00:02 +03:00
Denis Zharkov
151e55b2fa
Use descriptors for building SAM constructors
...
It helps to get rid of semantics duplicating and fixes known bugs
- SOE in OnlyAbstractMethodFinder.find
- type enhancement for SAM constructors
#KT-11287 Fixed
#KT-11322 Fixed
EA-77989 Fixed
2016-03-10 16:49:00 +03:00
Denis Zharkov
b8b48c5f98
Extract common logic into AbstractTypeConstructor
...
Mostly it's about detecting loops in supertypes
Test data changes:
- Loops are being disconnected in Java classes too
- functions.kt: loops disconnection mechanism runs supertypes calculation,
so when we start check T it forces F' supertypes calculation, that ends
with CYCLIC_GENERIC_UPPER_BOUND reported on F
#KT-11287 In Progress
2016-03-10 16:49:00 +03:00
Pavel V. Talanov
c3a1643c6c
Add test for obsolete KT-6481 Mark deprecated constructor calls with strikethrough
2016-03-09 18:41:00 +03:00
Pavel V. Talanov
1affb05b7b
Fix typechecker in case of "for ((a, b) in) { }"
...
Fixes NDFDE
2016-03-04 16:52:34 +03:00
Dmitry Petrov
8660800af7
Constraint system builder shouldn't drop nullability when comparing signatures for specificity.
2016-03-03 19:23:43 +03:00
Dmitry Petrov
8a2b80fe3f
Generalize signature comparison: checking for conflicting overloads.
...
Also, vararg parameter no longer conflicts with Array<out T>
(CONFLICTING_JVM_DECLARATIONS is reported, can be avoided using @JvmName).
2016-03-03 18:26:10 +03:00
Dmitry Petrov
77b7128689
Check conflicting overloads for generic signatures.
2016-03-03 18:26:09 +03:00
Alexander Udalov
8e77e16bbd
Remove leftovers of platformName and platformStatic in test data
...
Drop unnecessary imports, rename some tests
2016-03-02 16:47:04 +03:00
Dmitry Petrov
3ca4097bcc
KT-11203: report errors on read-write operations for elements of collections with inconsistent get&set signatures
2016-03-02 14:28:06 +03:00
Mikhail Glukhikh
96a7febd09
Smart cast is performed now inside 'x as? Type ?: return' safe as / elvis combination #KT-10992 Fixed
2016-03-02 10:07:33 +03:00
Dmitry Petrov
eb7cf92fbd
Minor. Add a test for KT-10732: no redeclaration for
...
fun <T> List<T>?.foo()
fun <T> List<T>.foo()
2016-03-01 13:54:03 +03:00
Pavel V. Talanov
a4c005fefd
Update existing test data depending on diagnostic parameter rendering
2016-02-26 14:45:11 +03:00
Pavel V. Talanov
d0b27a5fe2
Update test data for diagnostics test
2016-02-26 14:45:07 +03:00
Michael Bogdanov
1b94904684
Prohibited @Strictfp annotation on classes (it's not supported yet), Fix for KT-11109: Strictfp annotation do nothing when applied to class
...
#KT-11109 Fixed
2016-02-25 18:07:51 +03:00
Denis Zharkov
4c88e2a0bc
Use original descriptor when mapping fake override
...
Otherwise wrong CONFLICTING_INHERITED_JVM_DECLARATIONS were reported
#KT-10691 Fixed
2016-02-25 11:10:48 +03:00
Alexey Andreev
6adcafafbb
[KT-4124] Minor refactoring and cleanup
2016-02-20 15:19:30 +03:00
Alexey Andreev
9238afc439
[KT-4124] Fix some tests from common testData
2016-02-20 15:19:29 +03:00
Alexey Andreev
f5786dd567
[KT-4124] Add test case for nested/inner classes inside native class. Add diagnostic of inner classes inside native classes.
2016-02-20 15:19:28 +03:00
Alexey Andreev
e3c7cd0021
[KT-4124] Add diagnostic that reports of local classes. Remove test for diagnostic of nested types
2016-02-20 15:19:27 +03:00
Stanislav Erokhin
acdd807e91
Support "given candidates" mode in new resolution algorithm.
2016-02-20 14:55:16 +03:00
Stanislav Erokhin
7de2013a3e
KT-3856 Wrong inner class inaccessible diagnostic for extension to outer class
...
#KT-3856 Fixed
2016-02-20 14:55:15 +03:00
Alexander Udalov
1b8f934b54
Delete deprecated enum 'values' property
2016-02-19 22:28:44 +03:00
Dmitry Petrov
30c2abba3c
KT-9550: distinguish signature conflict on override from signature conflict of inherited members.
...
Add a common OverridingStrategy class for cases where we don't care (yet) about precise diagnostics.
2016-02-19 15:59:08 +03:00
Mikhail Glukhikh
883e2e4d2b
KT-9498 extension: now type can be inferred for getter with expression body
2016-02-19 14:49:25 +03:00
Michael Bogdanov
7c2920febe
Don't allow use standalone constants in complexExpressions, fix for KT-11043: Inconsisten result for class literal and string concatenation
...
#KT-11043 Fixed
2016-02-17 16:53:18 +03:00
Zalim Bashorov
c28b701ccf
JS: ignore annotation on expression when its retention is SOURCE
...
#KT-8258
2016-02-15 21:35:30 +03:00
Pavel V. Talanov
47ceb106c7
Fix "<" or ">" in member name leading to exception
2016-02-15 13:32:41 +03:00
Mikhail Glukhikh
0f7284f83a
More accurate safe call handling in GenericCandidateResolver / CallExpressionResolver
...
(real receiver nullability is taken into account)
2016-02-13 10:48:12 +03:00
Mikhail Glukhikh
17593e4ef6
Call completer: safe call with nullable receiver has nullable return type #KT-11007 Fixed
2016-02-13 10:48:07 +03:00
Dmitry Petrov
edf6a2142b
Check local function declarations for overload conflicts.
...
In PSI unifier tests, disable errors for tests on local functions (as irrelevant).
2016-02-12 09:54:21 +03:00
Pavel V. Talanov
7d98103c0c
overriddenDescriptors is empty for java static property and function declarations
...
Fake overrides are still created for java static with non-empty overriddenDescriptors
Add tests for inheriting visibility for java static members
Add test: check that java static declarations that shadow deprecated declarations should not be deprecated
Add test for corner case where "overriding" java static constant led to incorrect type in inheritor
Fix test data for existing tests
2016-02-11 14:08:14 +03:00
Dmitry Petrov
aed2f2b993
Property vs classifier conflict.
...
TODO get rid of duplicate diagnostics
(looks like OverloadResolver and DeclarationResolver are partially redundant; refactor them).
2016-02-11 10:32:46 +03:00
Mikhail Glukhikh
a08b8f43b2
Control flow graph for safe calls corrected #KT-10913 Fixed
...
Also #KT-10186 Fixed
Also #KT-5198 Fixed
2016-02-10 12:29:45 +03:00
Stanislav Erokhin
434bd0707d
Correcting rewrite type info after compete call.
...
#KT-10934 Fixed
#KT-10896 Fixed
2016-02-08 20:49:31 +03:00
Ilya Gorbunov
5361f6e941
Make Throwable properties message and cause open.
...
#KT-5587 Fixed
2016-02-08 18:10:46 +03:00
Dmitry Petrov
5968ce96df
KT-10939 CANNOT_COMPLETE_RESOLVE for inherited generic interface method
...
'original' for value parameters of fake override is not a value parameter of unsubstituted fake override.
Match value parameters by index.
2016-02-08 10:08:35 +03:00
Mikhail Glukhikh
7da981e12c
Regression tests #KT-8168 Obsolete
2016-02-05 18:29:40 +03:00
Dmitry Petrov
e4583fd275
Do not report IMPLICIT_CAST_TO_ANY on last statement of lambda with Unit(?) in at least one branch.
2016-02-05 10:44:50 +03:00
Pavel V. Talanov
7c84225cc4
Fix typechecker when initializer of destructuring declaration is unresolved or missing
2016-02-04 15:08:39 +03:00