Mikhail Glukhikh
78136fbb07
IDE facet refactoring, ModuleInfo.expectedBy introduced.
...
Part of facet classes was extracted to idea-analysis module
Related to KT-21771
2018-02-14 15:09:14 +03:00
Mikhail Zarechenskiy
694f5690f9
[NI] Improve diagnostic about unresolved receiver for many candidates
2018-02-14 14:58:05 +03:00
Mikhail Zarechenskiy
3afd4a2f4a
[NI] Record all diagnostics from subcalls resolution results
2018-02-14 14:58:04 +03:00
Mikhail Zarechenskiy
6a7a07bf9d
[NI] Don't forget to report about unresolved callable reference
2018-02-14 14:58:04 +03:00
Alexander Udalov
60a551404a
Refine modality of fake overrides inherited from abstract expected members
...
In an open expected class inheriting an expected interface, abstract
members are now inherited as _open_ fake overrides, not final. Final was
technically safer but also stricter and thus could be unexpected by the
user. In a final class, abstract members are still inherited as _final_
fake overrides. So, the general rule is now the following: the modality
of an expected fake override, which overrides only abstract members, in
a non-abstract class is equal to the modality of that class
#KT-22031 Fixed
2018-02-14 12:45:45 +01:00
Mikaël Peltier
8ab7e5c406
KT-10057 Use lcmp instead of Intrinsics.compare
...
Fix of https://youtrack.jetbrains.com/issue/KT-10057
2018-02-14 09:46:29 +01:00
Denis Zharkov
c47c1c5ffd
Fix runtime CCE in case of out-projected SAM
...
Probably, when NI is there this fix will become unnecessary because
there will be no approximation applied, thus the value parameter
will remain Hello<#Captured> instead of Nothing
#KT-17171 Fixed
2018-02-14 10:29:14 +03:00
Mikhail Zarechenskiy
6baf937a52
Update test files with dumped declarations for NI
2018-02-13 19:50:25 +03:00
Mikhail Zarechenskiy
c4cfd07fe9
[NI] Fix infinite completion of arguments in AllCandidates mode
...
See AutoImports#testFactoryFunctionFromLambda for example
2018-02-13 15:06:34 +03:00
Mikhail Zarechenskiy
e017e9cb5f
Support passing inline class values with spread operator
2018-02-13 13:16:45 +03:00
Mikhail Zarechenskiy
3919dc94e1
Box values of inline class types when passing to function as varargs
2018-02-13 13:16:44 +03:00
Mikhail Zarechenskiy
6687751cf5
Generate as check for inline classes using wrapper
...
Should be improved when inline class is based on non-null reference
2018-02-13 13:16:44 +03:00
Mikhail Zarechenskiy
a88dbefcd9
Generate is check for inline classes same as for primitives
...
Should be improved when inline class is based on non-null reference
2018-02-13 13:16:44 +03:00
Mikhail Zarechenskiy
d606e5bc89
Correct boxing for functional types containing inline classes
2018-02-13 13:16:43 +03:00
Mikhail Zarechenskiy
a8a9f774d0
Map inline classes in generic argument position to theirs wrap classes
2018-02-13 13:16:43 +03:00
Mikhail Zarechenskiy
1d16d21dbb
Fix boxing for non-local and labeled returns with inline classes
2018-02-13 13:16:42 +03:00
Mikhail Zarechenskiy
80dd5c106e
Propagate KotlinType through call generator, fix boxing on arguments
2018-02-13 13:16:42 +03:00
Mikhail Zarechenskiy
22b9c25dd0
Add KotlinType info about this inside inline class
2018-02-13 13:16:41 +03:00
Mikhail Zarechenskiy
c86d3e354b
Skip call to the underlying value of inline class
2018-02-13 13:16:41 +03:00
Mikhail Zarechenskiy
2c279978c8
Fix generation of property accessor to the underlying value
2018-02-13 13:16:40 +03:00
Mikhail Zarechenskiy
ce601bebbe
Fix detection of erased this for inline class
2018-02-13 13:16:40 +03:00
Mikhail Zarechenskiy
b361d0e9c0
Add test and check that iterator over UInt folds to a simple for-loop
2018-02-13 13:16:40 +03:00
Mikhail Zarechenskiy
059f1e9eed
Support inline classes working with collection elements (get/set)
2018-02-13 13:16:39 +03:00
Mikhail Zarechenskiy
8015295059
Desugar constructor call of inline class to the underlying value
...
Also add information about KotlinType to the constant stack values
2018-02-13 13:16:39 +03:00
Mikhail Zarechenskiy
6320368609
Add KotlinType to the Coercion stack value
2018-02-13 13:16:38 +03:00
Dmitry Petrov
36128ba66f
Don't generate primary constructor body for expect classes
2018-02-13 10:09:28 +03:00
Dmitry Petrov
839ebba157
ProperNumberComparisons is disabled by default (until LDC decision)
2018-02-13 09:26:00 +03:00
Dmitry Petrov
af79bbd247
Minor: reformat code
2018-02-13 09:25:40 +03:00
Dmitry Petrov
a790195808
Implement "proper numeric comparisons" support in JVM BE
2018-02-13 09:25:40 +03:00
Dmitry Petrov
e23a48e8d0
Minor: reformat code
2018-02-13 09:25:40 +03:00
Pavel V. Talanov
fd4e262b1f
Minor: modify test for KT-22819 to unmute it on teamcity
...
#KT-22819 Open
2018-02-12 16:35:56 +01:00
Anton Bannykh
cd3a797f2a
JS: fix corner case in when translation (fix crash in KT-22544)
2018-02-12 17:15:48 +03:00
Mikhail Zarechenskiy
9e22761262
Fix type parameters indexes of MockClassDescriptor
...
Exception was thrown during mapping of arguments to parameters in `computeSupertypeProjections`
#KT-18522 Fixed
2018-02-11 16:21:23 +03:00
Yan Zhulanow
310ee67c35
REPL, minor: Ignore empty lines (#KT-21611)
2018-02-09 19:24:57 +03:00
Dmitry Petrov
5a85bf36a5
Check for type parameter supertypes in primitive numeric comparisons
2018-02-09 14:41:54 +03:00
Alexey Sedunov
5c6bba9f14
Rename: Fix qualified expression replacement for the case 'invoke' <-> 'get'
...
#KT-22705 Fixed
2018-02-09 14:17:39 +03:00
Alexey Sedunov
e88f1467eb
Rename: Add quotes to declaration name if necessary
...
#KT-22708 Fixed
2018-02-09 14:17:38 +03:00
Alexey Sedunov
428b086458
Refactor: Move 'isIdentifier' and 'quoteIfNeeded' functions to frontend
2018-02-09 14:17:37 +03:00
Ilya Chernikov
e38d5395df
Pass previous dependencies to the legacy script dependency resolvers
...
fixes #KT-22753
2018-02-09 11:03:43 +01:00
Mikhael Bogdanov
d7e5eb24ee
Update android test dependencies
2018-02-09 09:45:14 +01:00
Mikhael Bogdanov
b666a2da5f
Increase android test timeout
2018-02-09 09:45:13 +01:00
Denis Zharkov
f6c6f67566
Minor. Remove irrelevant JAVAC_EXPECTED_FILE directive in tests
...
This change fixes these tests
2018-02-09 10:54:28 +03:00
Mikaël Peltier
e1f44d6237
Move tests to the right place
2018-02-09 09:10:53 +03:00
Mikaël Peltier
9274241c0e
KT-22714 Avoid to generate unecessary checkcast
...
- StackValue already avoid to generate checkcast from a type or an
array to java.lang.Object. Add a new case to avoid to generate a
checkcast from an array to an array of java.lang.Object when arrays
have the same dimensions.
Fix of https://youtrack.jetbrains.com/issue/KT-22714
2018-02-09 09:10:53 +03:00
Mikhail Zarechenskiy
0ecb3afdf7
Refactoring: rename AsmTypeAndKotlinType -> JvmKotlinType
2018-02-09 05:06:34 +03:00
Mikhail Zarechenskiy
913e4b42bb
Support inline classes as last expression in lambda
2018-02-09 05:06:32 +03:00
Mikhail Zarechenskiy
396cc7d02b
Support unboxing of inline classes in elvis
2018-02-09 05:06:31 +03:00
Mikhail Zarechenskiy
fefcddc803
Support boxing/unboxing for captured vars of inline class types
2018-02-09 05:06:29 +03:00
Mikhail Zarechenskiy
9f24bbd980
Support unboxing of inline classes after assertion operator
2018-02-09 05:06:27 +03:00
Mikhail Zarechenskiy
30c79ffadc
Support generating computable properties inside inline classes
2018-02-09 04:57:20 +03:00