Arseniy Terekhov
c0ab367281
[FIR] DeprecationProvider: fix test, remove FIR_IDE_IGNORE
2022-08-19 07:37:55 +00:00
Vsevolod Tolstopyatov
22e26d0756
Move EnumEntries LVS to 1.9
...
* Also cleanup tests to avoid using obsolete WITH_RUNTIME
2022-08-12 09:35:32 +00:00
Mikhail Glukhikh
7333589663
K1/K2: add Enum.entries unconditionally and filter them out in tower
...
Before this commit, we added Enum.entries only in case when
LanguageFeature.EnumEntries was ON (with an exception in K1/Java case).
In this commit we add Enum.entries unconditionally, and in case
the language feature is OFF we filter them out during tower resolve.
2022-08-12 09:35:27 +00:00
Mikhail Glukhikh
81e1131441
SubclassOptInRequired: add extra test about inheritance and superseding
2022-08-11 14:05:09 +00:00
Mikhail Glukhikh
80a9f22052
Add applicability checks & tests for SubclassOptInRequired
2022-08-11 14:05:09 +00:00
Mikhail Glukhikh
76aaecbdf0
Add/fix extra cases for #KT-41886 Fixed
2022-08-11 14:05:08 +00:00
Mikhail Glukhikh
7d3368da58
K2: report errors related to SubClassOptInRequired annotation
...
Related to KT-41886
2022-08-11 14:05:08 +00:00
Mikhail Glukhikh
c67c5cad27
K1: report errors related to SubClassOptInRequired annotation
...
Related to KT-41886
2022-08-11 14:05:07 +00:00
Ilmir Usmanov
b93c000250
Make suspend fun, where suspend is a function error in 1.9
...
instead of 1.8.
#KT-49264
2022-07-28 21:03:07 +02:00
Mikhail Glukhikh
32a73968de
Stop tower resolve in K2 in more similar manner with K1
2022-07-27 15:29:41 +00:00
Mikhail Glukhikh
bc396b9765
K2: don't report RETURN_TYPE_MISMATCH on last statement returns
...
#KT-53198 Fixed
2022-07-22 16:39:51 +00:00
Victor Petukhov
42e71f8c53
Remove explicit enabling the new type inference from test data
2022-07-22 16:03:52 +00:00
Victor Petukhov
224beb24eb
Remove explicit disabling the new type inference from test data
2022-07-22 16:03:51 +00:00
Ilya Kirillov
d04bd320f9
[LL FIR] ignore test failing due to ^KT-53242
2022-07-19 17:17:35 +02:00
pyos
06c7572ee5
FIR CFG: process called-in-place lambdas as loops
2022-07-11 18:11:30 +03:00
Ilya Chernikov
bb996c1b27
Switch kotlin version to 1.8
...
with appropriate fixes in testdata, tests and other
places.
2022-06-29 10:20:30 +02:00
Victor Petukhov
fa7809cd80
[FE] Remove BuilderInference annotation from tests
2022-06-21 15:01:56 +02:00
Ivan Kochurkin
9f69ea1786
[FIR] Add TYPECHECKER_HAS_RUN_INTO_RECURSIVE_PROBLEM diagnostics, ^KT-52327 Fixed
2022-06-17 23:26:16 +00:00
pyos
63b0708ed5
FIR CFG: join/unify data flow from postponed lambdas at each level
...
For example:
foo(
// `if` joins A & B
if (condition)
run { ... } // A
else
run { ... }, // B
run { ... } // C
) // `foo` unifies `A & B` and `C`, so if it is not resolved itself,
// further `if`s, `when`s, safe calls outside it, etc. continue
// building the correct type predicate until the next completed
// call.
^KT-44512 Fixed
2022-06-15 20:05:49 +00:00
Roman Golyshev
166c771e1b
[FIR IDE] Ensure resolve to CONTRACTS phase in ReturnTypeCalculator
...
If we want to analyse some function's call, we need to know about its
contracts, otherwise resolving the following code would be broken.
Computing return type of function is a prerequisite to using it in any
sensible way, so it's the best place to resolve it to CONTRACTS
KT-50733
2022-06-06 09:14:37 +00:00
Mikhail Glukhikh
6fc27c22f4
K1:report warning on OptIn usages inside SAM constructor #KT-47708 Fixed
2022-06-02 15:36:58 +00:00
Ivan Kochurkin
792aa24a04
[FIR] Throws by star import wins builtin Throws, ^KT-52407 Fixed, ^KT-52517 Fixed
2022-05-29 23:41:27 +03:00
Victor Petukhov
02a430875f
[FE 1.0] Don't fail candidates which were marked with compatibility resolve previously
...
^KT-52431 Fixed
^KT-52393 Fixed
2022-05-27 15:14:22 +00:00
Mikhail Glukhikh
d7ca7e17c9
FE 10: wrap ext. receiver inlining prohibition in the language feature
...
See KT-52502
2022-05-27 14:55:08 +00:00
pyos
fad35b95d4
FE: forbid extension calls on inline functional parameters
...
Extension receivers are currently implicitly noinline, and changing that
would require modifying the syntax to allow marking them noinline or
crossinline.
^KT-5837 Open
^KT-25787 Fixed
^KT-47965 Fixed
^KT-50107 Fixed
^KT-52403 Fixed
2022-05-27 14:55:07 +00:00
Victor Petukhov
efa267bf86
[FE] Fix tests after rebase
2022-05-27 13:56:34 +00:00
Mikhail Glukhikh
6f17a8713c
Fix KT-47708 in FIR by transferring SAM annotations to synthetic constr.
2022-05-24 12:29:28 +00:00
Mikhail Glukhikh
7c89f0188a
FIR: resolve conflicts around SAM calls properly
2022-05-24 12:29:27 +00:00
Denis.Zharkov
c018270462
Support DNN types in approximator
...
Mostly, it's relevant to FIR since there we started loading
type parameter based types as (T & Any..T?)
2022-05-19 16:54:06 +00:00
Denis.Zharkov
bf96abeed1
FIR: Fix special members came from superclass
...
class JavaSuperClass {
// members impls with special signature, but it doesn't override any Kotlin specials
}
class KotlinInterface {
// special members
}
class JavaSubClass extends JavaSuperClass implements KotlinInterface {
// we should obtain members from JavaSuperClass with their Kotlinish
// signature, not the Java one
}
2022-05-19 16:54:00 +00:00
Denis.Zharkov
f70ae2df3a
FIR: Refine inference constraints when type variable in flexible position
...
That issue might be fixed via changing
TypeVariableMarker.shouldBeFlexible at ConeConstraintSystemUtilContext
but this and some other tricks have been added because of incorrect
handling of constraints where type variable has a flexible bound
^KT-51168 Fixed
2022-05-19 16:53:59 +00:00
Dmitriy Novozhilov
4d5a4ccd6b
[FE 1.0] Don't fail on calls of functions with contracts from object
...
^KT-51704 Fixed
2022-05-19 07:14:22 +00:00
Ivan Kylchik
51ccc32a3f
Update test data after introducing IntrinsicConstEvaluation annotation
2022-05-18 21:19:57 +03:00
Victor Petukhov
9f31f074da
[FE 1.0] Take care callable reference candidates with recursive candidate return type
...
^KT-51844 Fixed
2022-05-09 19:23:43 +00:00
Victor Petukhov
12a39d0330
[FE 1.0] Report errors due to inferred empty intersection on those candidates which were already previously discriminated by CompatibilityOfTypeVariableAsIntersectionTypePart
2022-04-27 19:50:26 +00:00
Victor Petukhov
39d13442be
[FE] Support intersection type emptiness checking for interfaces
2022-04-27 19:50:25 +00:00
Victor Petukhov
5bfe6cd20a
[FE] Implement discussed rules to report empty intersection errors
2022-04-27 19:50:22 +00:00
Mikhail Glukhikh
0ecba0ad0b
FIR: don't create incorrect constraints in CallableReferenceResolution
...
#KT-50994 Fixed
Related to KT-49477
2022-04-18 14:27:42 +00:00
Ilmir Usmanov
6e30ce2763
FE: Make synchronized suspend functions and lambdas error in 1.8
...
#KT-27333 Fixed
2022-04-11 12:02:30 +00:00
Ilmir Usmanov
f473998e8b
FIR: Make 'suspend fun', where 'suspend' is not builtin error in 1.8
...
#KT-49264
2022-04-11 12:02:29 +00:00
Ilmir Usmanov
f75a8109d2
FE 1.0: Make 'suspend fun', where 'suspend' is not builtin error in 1.8
...
#KT-49264 Fixed
2022-04-11 12:02:28 +00:00
Denis.Zharkov
512446843b
FIR: Support typeRef-name label for this
2022-04-06 16:05:37 +00:00
Mikhail Glukhikh
9bd6a9c069
FIR: handle 'SinceKotlin' as a special kind of deprecated
...
#KT-51850 Fixed
2022-04-06 12:51:20 +00:00
Mikhail Glukhikh
04e8e1b2ad
Move file annotation resolve a bit earlier #KT-51499 Fixed
2022-04-04 12:51:34 +00:00
Mikhail Glukhikh
899dc401c8
Add test for KT-51499 (occurs in FE10, already fixed in FIR)
2022-04-04 12:51:33 +00:00
Victor Petukhov
57a134c543
[FE 1.0] Report recursive type checker problem as a warning till 1.9
...
^KT-48546
2022-03-23 21:13:34 +00:00
Victor Petukhov
2307122089
[FE 1.0] Report errors for recursive types from completion as well
...
Such diagnostics could be missed at least for plus assignment's right side because it wasn't report for the second time of analysis
^KT-48546 Fixed
2022-03-23 21:13:34 +00:00
Victor Petukhov
27fa632630
[FE 1.0] Update test data with new error type representation
2022-03-23 21:13:33 +00:00
Dmitriy Novozhilov
6f64aedaf0
[FIR] Fix FindReferencePositioningStrategy for light tree
...
There was a problem which causes to lookup for assign token inside
functions from arguments of call
2022-03-11 15:36:05 +03:00
Dmitriy Novozhilov
ade2307345
[FIR] Fix exponential analysis of augmented array access calls
...
^KT-50861 Fixed
2022-03-11 15:36:05 +03:00