Mikhail Glukhikh
70366c3bcb
FIR: forbid java.lang.String deprecated constructors #KT-51364 Fixed
2022-03-21 13:58:13 +00:00
Mikhail Glukhikh
c051edcbee
FIR: add visibility filtering for qualifier resolve #KT-51621 Fixed
2022-03-15 13:21:03 +00:00
Mikhail Glukhikh
3251c474a2
FIR: add test for KT-51621 (qualifiers conflict case)
2022-03-15 13:21:02 +00:00
Mikhail Glukhikh
901336e6e9
FIR: handle ambiguity more precisely during constructor processing
2022-03-15 13:21:02 +00:00
Mikhail Glukhikh
87a7408ddf
FIR: handle double-imported qualifiers properly
2022-03-15 13:21:02 +00:00
Mikhail Glukhikh
b038ae8b0c
FIR: handle double-imported constructors properly
2022-03-15 13:21:01 +00:00
Mikhail Glukhikh
bd790b792c
FIR: minor code cleanup
2022-03-15 13:21:01 +00:00
Mikhail Glukhikh
0a7da903f4
FE1.0/FIR: add test for "double import" situation
2022-03-15 13:21: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
6b53ac8367
FIR: forbid top-level destructuring declarations #KT-50468 Fixed
2022-03-15 13:08:18 +00:00
Mikhail Glukhikh
6ecc97575d
FIR: make deeper recursive type alias expansion check (see KT-37000)
2022-03-15 13:08:18 +00:00
Ilya Chernikov
6ae55a98cd
FIR2IR: fix annotations conversion for precompiled functions
...
fixes the case then the function being inlined is taken
from the binaries compiled on the previous iteration, and therefore
should be treated similarly to a fun from a library.
2022-03-14 13:37:50 +03:00
Ilya Chernikov
aa0386276d
Fix FIR incremental compilation failure with inlines and lambdas
...
#KT-51546 fixed
2022-03-14 13:37:50 +03:00
Mikhael Bogdanov
6b00b51e6d
Generate fake variables for default lambdas during inline
...
#KT-51557 Fixed
2022-03-14 08:48:26 +00:00
Xin Wang
4277827506
Don't transform irBranch if tableswitch can't be generated
...
#KT-34466 Fixed
2022-03-12 14:30:00 +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
wrongwrong
c4735f9f29
Add tests for KFunction involving value classes
...
See KT-31141.
2022-03-10 23:28:40 +01:00
Mikhail Glukhikh
c8453ec8b4
FIR: report ambiguity-like errors in type resolve
2022-03-10 20:42:42 +00:00
Mikhail Glukhikh
34998473f5
FIR: Move deprecation resolve earlier
2022-03-10 20:42:41 +00:00
Mikhail Glukhikh
30fa0230ec
FIR: rename ANNOTATION_FOR_PLUGINS into COMPILER_REQUIRED_ANNOTATIONS
2022-03-10 20:42:40 +00:00
Mikhail Glukhikh
f32cdef760
FirCompanionGenerationProcessor: optimize a bit
2022-03-10 20:42:40 +00:00
Mikhail Glukhikh
9aaf7b7d24
FIR: drop pluginPhase special parameter
2022-03-10 20:42:40 +00:00
Simon Ogorodnik
d054976389
FIR. Add visibility/deprecation filtering to getFirstClassifierOrNull
2022-03-10 20:42:39 +00:00
Simon Ogorodnik
4ba5a55626
FIR. Add visibility/deprecation filtering to type resolve
2022-03-10 20:42:39 +00:00
Simon Ogorodnik
f5b49e48ad
FIR. Remove visibility filtering from importing scopes
2022-03-10 20:42:38 +00:00
Simon Ogorodnik
ec3e2f7b99
FIR. Shadow classifiers from super-type scopes
2022-03-10 20:42:38 +00:00
Simon Ogorodnik
5ea1c246d7
FIR. Get rid of kotlin.Throws prioritization hack
2022-03-10 20:42:38 +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
4178c8156a
Fix NPE in KtSourceElement.elementType #KT-44152 Fixed
2022-03-10 09:01:58 +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
Alexander Udalov
1e26888dd9
Psi2ir: fix parameter indices when generating extension invoke call
...
Incorrect `valueParameter` was passed to `generateValueArgument`, which
resulted in incorrect type being considered for generating suspend
conversion.
#KT-50949 Fixed
2022-03-09 15:19:38 +01:00
Alexander Udalov
328853dffe
Add tests for obsolete issues
...
(Test for KT-37331 is added to multiplatform/defaultArguments/suspend.kt.)
#KT-30080
#KT-33641
#KT-36237
#KT-36952
#KT-37331
#KT-38920
#KT-39256
#KT-42415
#KT-44636
#KT-45704
#KT-47084
#KT-47894
2022-03-08 14:19:37 +01: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
Dmitry Petrov
fdb01d96f0
JVM_IR JavaSamConversionEqualsHashCode
2022-03-03 09:01:42 +00:00
Dmitry Petrov
8576265108
Enable KotlinFunInterfaceConstructorReference in LV 1.7
2022-03-02 13:12:08 +03:00
Dmitriy Novozhilov
4022918ea2
[FIR2IR] Properly generate arguments for annotation constructors calls in default values of annotation constructors
2022-02-28 11:42:35 +03:00
Dmitriy Novozhilov
18fc2802e5
[FIR] Make FirTypeParameter.containingDeclarationSymbol not null
...
Also fix initializing this property in all places
2022-02-28 11:42:34 +03:00
Dmitriy Novozhilov
35a2a6bcec
[FIR] Store containingDeclarationSymbol for type parameters of substitution overrides
2022-02-28 11:42:33 +03:00
Alexander Udalov
157db778fd
Rework support of Iterator.iterator optimization in ForLoopsLowering
...
- Fix the predicate used for finding the member function `next`: check
that there's no extension receiver parameter, don't filter out
abstract functions.
- Do not copy iterator expression, instead change the type in all
references to the iterator variable.
- Fix some style issues.
#KT-47171 Fixed
2022-02-28 01:39:31 +01:00
Xin Wang
1b776bd5b6
JVM_IR: Specialize iterator if possible
...
fixes KT-47171
2022-02-28 01:39:31 +01:00
Roman Golyshev
fed08aaff5
FIR IDE: Consider COMPANION_GENERATION phase in lazy resolve
2022-02-25 23:08:26 +03:00
Roman Golyshev
f700b87f6c
FIR: Prevent registering compiler plugins twice
2022-02-25 23:08:25 +03:00
Roman Golyshev
765af5f18a
FIR IDE: Register plugins-related session components in IDE session
...
Move registering CLI-specific plugin-related components to
`registerCliCompilerOnlyComponents`
2022-02-25 23:08:25 +03:00
Roman Golyshev
029331c23b
FIR: Introduce AbstractFirRegisteredPluginAnnotations
...
It will be needed to implement an alternative implementation of this
service
2022-02-25 23:08:25 +03:00
Mikhail Glukhikh
53d6ac24e5
Switch kotlin version to 1.7
...
* Change 1.6 to 1.7 constants
* Fix SAFE_CALL_WILL_CHANGE_NULLABILITY for testData
* Change EXPOSED_PROPERTY_TYPE_IN_CONSTRUCTOR_WARNING to EXPOSED_PROPERTY_TYPE_IN_CONSTRUCTOR_ERROR
* Change NON_EXHAUSTIVE_WHEN_STATEMENT to NO_ELSE_IN_WHEN
* Fix testData for SafeCallsAreAlwaysNullable
* Change T -> T & Any in test dumps
* Change INVALID_CHARACTERS_NATIVE_WARNING -> INVALID_CHARACTERS_NATIVE_ERROR
* TYPECHECKER_HAS_RUN_INTO_RECURSIVE_PROBLEM_WARNING -> TYPECHECKER_HAS_RUN_INTO_RECURSIVE_PROBLEM_ERROR
2022-02-25 11:46:27 +00:00
Jinseong Jeon
790f2d13ae
RAW FIR: record non-null value parameter of Enum#valueOf upfront
2022-02-24 17:51:50 +01:00