Victor Petukhov
9e9e0211eb
[FE] Check if type variable is fixed into an empty intersection type and report resolution warnings/errors if needed (completion stage)
...
^KT-51221 Fixed
2022-04-27 19:50:18 +00:00
Aleksei.Cherepanov
3d8f140d6b
[JPS] Fix incremental build after changing Java enum used in Kotlin when
...
EnumWhenTracker implemented for tracking changed java enum class items, that used in kotlin when expression.
#KT-47824 Fixed
2022-04-19 18:39:41 +00:00
Dmitriy Novozhilov
989cef6c3c
[FE 1.0] Don't report OVERRIDE_DEPRECATION on default accessors of deprecated properties
...
^KT-51893 Fixed
2022-04-15 08:30:05 +00:00
Artem Kobzar
97fc97e63d
chore: add miss internal modifier to internal annotation.
2022-04-11 14:25:49 +00:00
Artem Kobzar
86df391cab
fix: function body comments.
2022-04-11 14:25:47 +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
Alexander Udalov
349c17786e
Fix missing error on fun interface constructor reference
...
#KT-51843 Fixed
2022-04-08 14:02:14 +02:00
Denis.Zharkov
3d06a92eea
K1: Adjust positioning for NO_CONTEXT_RECEIVER
2022-04-06 16:05:41 +00:00
Denis.Zharkov
4349060db1
K1: Support referencing class context receivers in a form of this@Name
2022-04-06 16:05:34 +00:00
Denis.Zharkov
4379460177
Fix AST/PSI structure for context receivers in function types
...
Having CONTEXT_RECEIVER_LIST inside FUNCTION_TYPE_RECEIVER looks a bit hacky
2022-04-06 16:05:24 +00:00
Mikhail Glukhikh
04e8e1b2ad
Move file annotation resolve a bit earlier #KT-51499 Fixed
2022-04-04 12:51:34 +00:00
Dmitriy Novozhilov
6722ec1dad
Fix typo
2022-04-01 10:14:58 +04:00
Dmitriy Novozhilov
60eff871dc
[FE] Make message of SAFE_CALL_WILL_CHANGE_NULLABILITY warning more clear
...
^KT-46860
2022-03-28 12:37:26 +00:00
Dmitriy Novozhilov
078acb1bfe
[FE] Fix positioning strategy for SAFE_CALL_WILL_CHANGE_NULLABILITY warning
...
^KT-46860
2022-03-28 12:37:25 +00:00
Dmitriy Novozhilov
565c61a702
[FE 1.0] Fix false-negative INVALID_IF_AS_EXPRESSION_WARNING and NO_ELSE_IN_WHEN_WARNING
...
^KT-51711 Fixed
2022-03-28 12:37:24 +00:00
Victor Petukhov
7e491edf95
Allow empty type info for excl expressions
...
^KT-34515 Fixed
2022-03-24 11:46:00 +00:00
Evgeniy.Zhelenskiy
28bf83ceac
[IR] Unite inline class and multi-field value class representation
...
#KT-1179
2022-03-24 11:38:43 +00:00
Evgeniy.Zhelenskiy
282ab398c6
[IR] Generify lowerings
...
#KT-1179
2022-03-24 11:38:42 +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
Victor Petukhov
b5933c70e2
[FE 1.0] Refactor error utils: split error entities and introduce error type and error scope kinds
2022-03-23 21:13:33 +00:00
Victor Petukhov
8c1fcddea3
[FE 1.0] Don't miss NO_SET_METHOD checks
...
^KT-28109 Fixed
2022-03-23 21:13:33 +00:00
Victor Petukhov
3aabc8d666
[FE 1.0] Substitute anonymous object's supertypes while using that in public declarations
...
^KT-46136 Fixed
2022-03-23 21:13:32 +00:00
Simon Ogorodnik
1bb655034b
Inference. Add parent builder inference constraints only once
2022-03-18 12:14:00 +00:00
Simon Ogorodnik
9f6a812786
Fix multiple registration of same type variable in builder inference
2022-03-18 12:14:00 +00:00
Mikhail Glukhikh
5810ac01d2
FE1.0/FIR: slightly fix diagnostic messages about OptIn
2022-03-15 13:08:19 +00:00
Mikhail Glukhikh
779aa75855
Make FE1.0/FIR OptIn override message more clear
2022-03-10 09:09:51 +00:00
Mikhail Glukhikh
d823020c07
Make FIR/FE1.0 report similar OptIn messages
2022-03-10 09:09:50 +00:00
Mikhail Glukhikh
b42c236fb3
Replace blank messages in OptIn diagnostics #KT-51358 Fixed
2022-03-10 09:09:50 +00:00
Mikhail Glukhikh
d30536addc
Minor: explicitly use LinkedHashSet in LabelResolver
2022-03-09 15:19:27 +00:00
Mikhail Glukhikh
14eec6cfc0
FE 1.0: implement typed this label resolve warning for KT-51433
...
#KT-51433 Fixed
2022-03-09 15:19:27 +00:00
Mikhail Glukhikh
b5e2c492c6
FE 1.0: implement initial label resolve warning for KT-51433
2022-03-09 15:19:26 +00:00
Mikhail Glukhikh
31b234a261
Code cleanup: LabelResolver
2022-03-09 15:19:26 +00:00
Mikhail Glukhikh
eb42a01926
Inject languageVersionSettings into VarianceChecker
2022-03-03 12:57:05 +00:00
Mikhail Glukhikh
ebed224f82
FE 1.0: use TYPE_VARIANCE_CONFLICT deprecation factory
2022-03-03 12:57:04 +00:00
Mikhail Glukhikh
7781413a93
FE 1.0: report TYPE_VARIANCE_CONFLICT also on qualifier type arguments
...
#KT-51439 Fixed
2022-03-03 12:57:04 +00:00
Mark Punzalan
afb34d3193
Analysis API: Implement KtCallResolver.collectAllCandidates for FE 1.0.
2022-02-17 19:51:35 +01:00
Ilmir Usmanov
9060168542
Support generic underlying type of inline class
...
Use upper bound in JVM representation.
#KT-32162
2022-02-15 08:11:08 +01:00
Victor Petukhov
78f4b9f1cd
[FE 1.0] Fix mistakes in error messages for resolution ambiguity with stub types
...
^KT-51022 Fixed
2022-02-14 15:43:47 +03:00
Victor Petukhov
a54c9edaad
[FE 1.0] Report progressions resolve changing warning while calling Java methods which pass Collection
...
^KT-51062 Fixed
2022-02-14 15:43:43 +03:00
Dmitry Savvinov
ea466353fb
Dont store type refinement mode in analysis flags
...
Instead, check the refiner from the DI-container or refiner from
capability of a module descriptor.
The reason is because in the IDE there might be multiple
ResolutionFacades (-> multiple DI-containers -> multiple module
descriptors) for one and the same IDE module, with different refinement
settings.
However, due to how the code is written, it's hard to have
different LanguageVersionSettings for one and the same module.
After this commit the refinement settings are determined by the
moduleDescriptor capabilities, which is much easier to tweak
See usage of that change in Kotlin IDE Plugin (commit is linked to the
YT issue)
^KTIJ-20775
2022-02-14 13:08:50 +03:00
Dmitriy Novozhilov
0eb526a8b4
[FE 1.0] Report warning about conflict in inherited members from deserialized dependencies
...
^KT-51194
^KT-51223 Fixed
2022-02-09 19:35:56 +03:00
Alexander Udalov
7dfe1793c8
Remove obsolete code used to load module annotations
...
`CliModuleAnnotationsResolver.getAnnotationsOnContainingModule` took
0.5% of total compilation time on IntelliJ.
#KT-48233
2022-02-01 08:42:40 +01:00
Mikhail Glukhikh
c2f43dd98e
Revert OPT_IN_MARKER_ON_OVERRIDE limitation #KT-48890 Fixed
2022-01-28 13:40:35 +00:00
Mikhail Glukhikh
d3f6ba99cb
Add links to related issues to some deprecation warnings
2022-01-28 13:40:34 +00:00
Victor Petukhov
1a23cd8c45
[FE 1.0] Don't try to report specialized resolution ambiguity error for builder inference if the corresponding substitutor is empty
...
^KT-50989 Fixed
2022-01-27 15:30:16 +03:00
Mikhail Glukhikh
c255da815f
Change some names in source code from useExperimental to optIn
2022-01-27 11:48:21 +00:00
Anastasia.Shadrina
a86b4d767e
[FE] KT-50878 Prohibit using contextual declarations without -Xcontext-receivers
2022-01-21 17:21:59 +03:00
Pavel Kirpichenkov
b4c854429f
[MPP] Permit const actual properties for non-const expects
...
It's safe as not having const is more restrictive, therefore can be
allowed in common. Otherwise, it's not possible to declare an expect
declaration for a platform property with `const` modifier in common
KT-18856
2022-01-19 13:22:47 +03:00