Victor Petukhov
559bedf5ae
Continue processing not builder inference stub variables in the type checker during computing common super type
...
^KT-47148 Fixed
2021-06-15 17:40:56 +03:00
Victor Petukhov
1b82227308
Don't do new captured type specific checks for old ones in the type checker
...
^KT-47143 Fixed
2021-06-15 10:07:20 +03:00
Mikhail Glukhikh
ceb527c5e4
FIR: add OptIn checkers draft + some annotation / SinceKotlin utilities
2021-06-11 22:03:32 +03:00
Tianyu Geng
3c8693758b
FIR: handle synthetic properties with unstable smartcast
...
Synthetic properties from Java getter/setters need to be specially
handled so that candidates from such symbols are marked with unstable.
2021-06-10 16:01:14 +03:00
Tianyu Geng
ce767046eb
FIR checkers: report SMARTCAST_IMPOSSIBLE
2021-06-10 16:01:13 +03:00
Andrey Zinovyev
371452d49a
[FIR] Fix CANNOT_BE_IMPORTED for java static methods/variables
2021-06-10 11:28:34 +03:00
Tianyu Geng
32f55a2269
FIR checker: report VIRTUAL_MEMBER_HIDDEN
2021-06-09 16:27:49 +03:00
Mikhail Glukhikh
c33608e009
FIR: don't render resolved type annotations in favor of attributes
2021-06-09 15:42:43 +03:00
Andrey Zinovyev
ddc9c1bd1b
[FIR] Fix extension property reference resolution
...
On type with star projection
#KT-44372 Fixed
2021-06-09 15:15:28 +03:00
Andrey Zinovyev
972cd9e9e7
[FIR] Fix PACKAGE_CANNOT_BE_IMPORTED diagnostic
...
Don't report it when there is a function/property with the same name as
package
2021-06-09 09:02:49 +03:00
Denis.Zharkov
2653565f56
FIR: Support exhaustive whens on subjects of intersection type
2021-06-08 18:59:48 +03:00
Mikhail Glukhikh
0a670bf055
Report EXPERIMENTAL_API diagnostics on various implicit usages
...
#KT-32443 Fixed
#KT-22852 Fixed
2021-06-08 11:37:28 +03:00
Mikhail Glukhikh
d8d38862d9
Introduce EXPERIMENTAL_ANNOTATION_WITH_WRONG_RETENTION diagnostic
...
#KT-22941 Fixed
2021-06-08 11:37:27 +03:00
Mikhail Glukhikh
7393465696
Don't report EXPERIMENTAL_OVERRIDE_ERROR on annotated local functions
...
#KT-31728 Fixed
2021-06-08 11:37:26 +03:00
Denis.Zharkov
592256976e
FIR: Fix inference of builder-inference function from expect type
...
Previously, such calls were being completed with FULL mode and incorrect
INFERENCE_NO_INFORMATION_FOR_PARAMETER has been reported
2021-06-07 15:25:57 +03:00
Denis.Zharkov
18e93b50d9
FIR: Fix loading read-only collection Java types with incorrect variance
2021-06-07 15:25:56 +03:00
Denis.Zharkov
d932d5b0a5
FIR: Support adding expect type to calls in foo() as R position
...
See https://kotlinlang.org/docs/whatsnew12.html#support-for-foo-as-a-shorthand-for-this-foo
2021-06-07 15:25:51 +03:00
Denis.Zharkov
0aca3a3737
FIR: Adjust test data after introduction of INFERENCE_NO_INFORMATION_FOR_PARAMETER
...
See previous commits for details
2021-06-07 15:25:47 +03:00
Ivan Kochurkin
c4c2fbb5a0
[FIR] Implement RECURSIVE_TYPEALIAS_EXPANSION, CYCLIC_INHERITANCE_HIERARCHY diagnostics, fix stackoverlow exception in case if typealias points to type with type arguments
2021-06-03 20:41:58 +03:00
Mark Punzalan
32bb64a225
FIR: Report UNSAFE_OPERATOR_CALL for augmented assignments (was
...
reporting UNSAFE_CALL).
2021-06-03 20:18:03 +03:00
Ivan Kochurkin
f081a6b4fa
[FIR] Implement REDUNDANT_PROJECTION diagnostics, rename FirConflictingProjectionChecker -> FirProjectionRelationChecker, fix tests
2021-06-03 18:24:34 +03:00
Ivan Kochurkin
03e577bf98
[FIR] Implement CONFLICTING_PROJECTION_IN_TYPEALIAS_EXPANSION diagnostics, fix tests
2021-06-03 18:24:32 +03:00
Ivan Kochurkin
b85846c0c0
[FIR] Fix location for CONFLICTING_PROJECTION diagnostics, extend conflictingProjection.kt with test sample
2021-06-03 18:24:29 +03:00
Dmitriy Novozhilov
796f8e6bce
Revert "FIR checkers: report SMARTCAST_IMPOSSIBLE"
...
This reverts commit 84334b08
2021-06-03 09:48:50 +03:00
Tianyu Geng
84334b087c
FIR checkers: report SMARTCAST_IMPOSSIBLE
2021-06-02 13:19:12 +03:00
Mikhael Bogdanov
b72aa76415
Support class type parameters annotation checking
2021-06-01 06:33:51 +02:00
Mikhael Bogdanov
a8186d19d6
Support annotations on class type parameters
...
#KT-43714
2021-06-01 06:33:50 +02:00
Dmitriy Novozhilov
c6a2d85c87
[Build] Remove incorrect dependency
...
`intellijDep()` includes jars with JUnit3 and JUnit4. JUnit5 runner
which is used in compiler tests sees old junit on classpath and checks
if this version can be ran using Vintage test engine. Looks like recent
changes in platform changed order of this jars on classpath, so now
jar with JUnit3 is closer than JUnit4 (and they have same classes inside),
so version checker from JUnit5 observes JUnit3 and fails with error
of incompatible versions. Since old JUnits are not needed at all in those
modules now only required jars from intellijDep are included
2021-05-31 14:03:37 +03:00
Victor Petukhov
758eb8f851
Fix builder inference tests
2021-05-28 15:36:22 +03:00
Victor Petukhov
fd5169186e
Update test for the builder inference and add new ones
2021-05-28 15:36:21 +03:00
Victor Petukhov
0b37b2be6a
Add addtional tests for builder inference
2021-05-28 15:36:19 +03:00
Victor Petukhov
703a353d2e
Determine empty constraint system for a builder inference call by presense of not fixed type variables
2021-05-28 15:36:17 +03:00
Victor Petukhov
c5faf532f5
Allow builder inference calls with labeled lambda
...
^KT-24993 Fixed
2021-05-28 15:36:16 +03:00
Victor Petukhov
90066d7e50
Add expected type constraints in a builder inference call
2021-05-28 15:36:16 +03:00
Victor Petukhov
ac7b459f2a
Do subtyping with stub types properly
...
1) Return stub type if we are calculating super type between two same stub types
2) Return nullable Any if those stub types are different
2021-05-28 15:36:15 +03:00
Victor Petukhov
26b8e86fe1
Render stub types properly
2021-05-28 15:36:14 +03:00
Andrey Zinovyev
ebf6ce133b
[FIR] Fix kotlin version check in annotations
...
@RequireKotlin has more than one string parameter, so you need to check
'version' only
2021-05-28 12:24:58 +03:00
Mark Punzalan
af99ad0736
FIR checker: Report VAL_OR_VAR_ON_*_PARAMETER.
2021-05-25 20:39:34 +03:00
Denis.Zharkov
2ecba6ac39
Remove WITH_NEW_INFERENCE directive from all tests
...
This directive anyway does not make test run twice with OI, and with NI
It only once run the test with specific settings (// LANGUAGE)
and ignores irrelevant (OI or NI tags)
2021-05-25 13:28:26 +03:00
Denis.Zharkov
d4586cefb4
FIR: Properly deserialize upper bounds of classes type parameters
...
^KT-46661 Fixed
2021-05-25 13:28:25 +03:00
Ivan Kochurkin
cf531dbbe6
[FIR] Implement TYPE_VARIANCE_CONFLICT, TYPE_VARIANCE_CONFLICT_IN_EXPANDED_TYPE diagnostics, fix tests
2021-05-25 00:07:33 +03:00
Dmitriy Novozhilov
478a512b24
[FIR] Expand type of const val in FirConstPropertyChecker
2021-05-21 17:38:26 +03:00
Dmitriy Novozhilov
a1ae108ce5
[FIR] Properly generate IDE diagnostics from multiple diagnostics lists
2021-05-21 14:18:58 +03:00
Dmitriy Novozhilov
3fc7e0ed03
[FIR] Remove COMPARE_WITH_LIGHT_TREE from default directives of fir diagnostic tests
2021-05-20 20:20:40 +03:00
Denis.Zharkov
c3646b11ac
FIR: Fix inference when unit value should be cast to Any
2021-05-20 17:24:44 +03:00
Denis.Zharkov
c4862fb124
FIR: Unwrap type aliases in type arguments
2021-05-20 17:24:42 +03:00
Denis.Zharkov
00821bbc63
FIR: Update test data (repeated diagnostics)
...
They are a bit redundant, but it needs additional work to be done
to avoid them
2021-05-20 17:24:33 +03:00
Denis.Zharkov
b94335dd1c
FIR: Update diagnostics test data
...
Green code correctly became red
2021-05-20 17:24:30 +03:00
Denis.Zharkov
829f80179c
FIR: Update rendered tree in test data
2021-05-20 17:24:29 +03:00
Denis.Zharkov
c67ae8a0a3
FIR: Replicate coercion-to-unit behavior from FE 1.0
2021-05-20 17:24:25 +03:00