Mikhail Glukhikh
8e9e8302f7
CandidateApplicability: merge INAPPLICABLE_MODIFIER into CONVENTION_ERROR
2022-07-27 15:29:43 +00:00
Mikhail Glukhikh
577b9686c1
K2: fix using compatibility resolve for SAM constructors
2022-07-27 15:29:42 +00:00
Mikhail Glukhikh
32a73968de
Stop tower resolve in K2 in more similar manner with K1
2022-07-27 15:29:41 +00:00
Ilya Gorbunov
1addc23b23
Add range iteration tests for rangeUntil
...
#KT-52932
2022-07-26 23:52:10 +00:00
Steven Schäfer
d2f6acfd34
FIR: Add resolved type refs to the annotation container context for diagnostics
2022-07-26 09:34:09 +00:00
Ivan Kochurkin
80450042c7
[FIR] Ignore KtFakeSourceElementKind in FirRecursiveProblemChecker
2022-07-25 23:30:10 +02:00
Ivan Kochurkin
0af43757e3
[FIR] Implement FirNativeIdentifierChecker
...
* INVALID_CHARACTERS_NATIVE
2022-07-25 23:30:10 +02:00
Ivan Kochurkin
a44d5bf52f
[FIR] Implement FirNativeThreadLocalChecker
...
* INAPPLICABLE_THREAD_LOCAL
* INAPPLICABLE_THREAD_LOCAL_TOP_LEVEL
2022-07-25 23:30:10 +02:00
Ivan Kochurkin
987137cf76
[FIR] Implement FirNativeSharedImmutableChecker
...
* INAPPLICABLE_SHARED_IMMUTABLE_PROPERTY
* INAPPLICABLE_SHARED_IMMUTABLE_TOP_LEVEL
2022-07-25 23:30:10 +02:00
Ivan Kochurkin
1bb158e45c
[FIR] Add SourceSet.generatedDir() and use it in build.gradle.kts
2022-07-25 23:30:10 +02:00
Ivan Kochurkin
9f9cef392f
[FIR] Minor fixes of FirJvmDefaultChecker
2022-07-25 23:30:09 +02:00
Ivan Kochurkin
ad1fb07a95
[FIR] Implement FirNativeThrowsChecker
2022-07-25 23:30:09 +02:00
Ivan Kochurkin
c47148b8fb
[FIR] Remove FirJsSyntheticNamesProvider and FirNativeSyntheticNamesProvider.kt
2022-07-25 23:30:09 +02:00
Ivan Kochurkin
502349c594
[FIR] Implement Native test infrastructure, add FirNativeSessionFactory
2022-07-25 23:30:09 +02:00
Ivan Kochurkin
2f56b29b3f
[FIR] Extract FirSessionConfigurator and IncrementalCompilationContext to separated classes
...
With FirSessionFactory and FirJsSessionFactory
2022-07-25 23:30:09 +02:00
Ivan Kochurkin
94527e24e8
[FIR] Commonize code for creating common, JVM and JS session
...
Extract FirAbstractSessionFactory
2022-07-25 23:30:09 +02:00
Denis.Zharkov
7d6e133c0d
Refine warning messages for KT-36770
...
^KT-36770 Fixed
2022-07-25 16:08:49 +00:00
Denis.Zharkov
7f7e5c5975
FIR: Fix candidate receivers orders when choosing a context receiver
...
^KT-53257 Fixed
2022-07-25 15:11:29 +00:00
Ivan Kylchik
b9e2173288
Rewrite interpretation of enum entries to avoid IR data corruption
...
There was a bug here if during enum creation there will be an
exception. Then function `cleanEnumSuperCall` will never be called
and ir will be corrupted.
2022-07-23 18:32:53 +00:00
Ivan Kylchik
008a5f02e5
Make enum entries to be interpreted in right order
...
#KT-53727 Fixed
2022-07-23 18:32:52 +00:00
Ilya Kirillov
76f1744868
[Analysis API FIR] add more info to some exceptions
2022-07-23 19:54:47 +02:00
Rick Clephas
5a5e6ad8cd
[K/N] Add ObjCName annotation ( #4815 )
2022-07-23 18:58:06 +02:00
Ilya Kirillov
edf9e05b13
Distinguish cause attachments from exception attachments in KotlinExceptionWithAttachments
2022-07-23 17:08:22 +02:00
Ilya Kirillov
827c262f68
[Analysis API FIR, LL FIR] use exceptionWithAttachment to not leak user data
2022-07-23 17:08:22 +02:00
Alexander Udalov
584b70719e
JVM IR: disable SAM conversion in case type has 'in' projection
...
... and the corresponding type parameter has a non-trivial (i.e.
non-`Any?`) upper bound.
The best solution here would be to get rid of
`removeExternalProjections` completely, and just use the type of the
argument at the call site, but see KT-52428.
#KT-51868 Fixed
2022-07-23 01:10:53 +02:00
Denis.Zharkov
a3b33901d8
Add issue link to deprecation warning message for KT-36770
...
^KT-36770 Fixed
2022-07-22 16:42:13 +00:00
Mikhail Glukhikh
3ae75a5094
FIR2IR: generate annotations on fake override parameters #KT-53208 Fixed
2022-07-22 16:39:52 +00:00
Mikhail Glukhikh
5445f4043a
K2: expand types during smartcasting to prevent redundant intersections
...
#KT-53184 Fixed
2022-07-22 16:39:52 +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
Alexander Korepanov
0982872959
[JS IR] Fix clash between generic extension overloads
...
Type parameter constraints are used for calculating JS signature hash.
^KT-51151 Fixed
2022-07-22 16:14:51 +00:00
Mikhail Glukhikh
0bd06b4095
K1: unify code around resolveCallWithGivenDescriptors
2022-07-22 16:03:54 +00:00
Mikhail Glukhikh
ec055eb418
K1: cleanup new inference constructor resolve in CallResolverUtil
2022-07-22 16:03:54 +00:00
Mikhail Glukhikh
e20efc1398
K1: don't report UNRESOLVED_WITH_TARGET on hidden setters
2022-07-22 16:03:53 +00:00
Victor Petukhov
00d1e46c5a
[FE 1.0] Don't throw exception during substitution of accessors, just return original
2022-07-22 16:03:53 +00:00
Victor Petukhov
db54d18c72
[FE 1.0] Add fallback for extracting when call
2022-07-22 16:03:52 +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
Victor Petukhov
c0ae68fe93
[FE 1.0] Remove type predicate calculation from CFG tests
...
That logic is hard to support because it used deprecated `OldResolutionCandidate` and `ResolvedCallImpl`. Moreover FIR has own CFG utils.
2022-07-22 16:03:51 +00:00
Victor Petukhov
5f5c3aa534
[FE 1.0] Clean-up pseudocodeUtils.kt: remove unused methods, move test specific methods into test-common module
2022-07-22 16:03:50 +00:00
Victor Petukhov
6e191147b9
[FE 1.0] Resolve setters through the new type inference infra
...
^KT-48961 In progress
2022-07-22 16:03:50 +00:00
Victor Petukhov
a74c221729
[FE 1.0] Resolve equal calls through the new type inference infra
...
^KT-48961 In progress
2022-07-22 16:03:49 +00:00
Victor Petukhov
a542de715a
[FE 1.0] Resolve collection literals through the new type inference infra
...
^KT-48961 In progress
2022-07-22 16:03:49 +00:00
Victor Petukhov
0070c234ce
[FE 1.0] Resolve constructor calls through the new type inference infra
...
^KT-48961 In progress
2022-07-22 16:03:49 +00:00
Victor Petukhov
e66cc9a639
[FE 1.0] Resolve special construct calls through the new type inference infra
...
^KT-48961 In progress
2022-07-22 16:03:48 +00:00
Victor Petukhov
bab8047bb3
[FE 1.0] Resolve this and super calls through the new type inference infra
...
^KT-48961 In progress
2022-07-22 16:03:48 +00:00
Sergey Bogolepov
cd54afea8f
[K/N] Add option to omit generation of binary when producing framework
...
`-Xomit-framework-binary` is useful when the user does not care about
generated machine code, but only about its public interface.
Current use-case is for development purposes only: to iterate faster
on ObjCExport. But potentially it can be turned into user-facing feature
2022-07-22 11:57:15 +00:00
Mikhail Glukhikh
78da5907c8
K2 checkers: separate report committer from other diagnostic components
2022-07-22 11:35:28 +00:00
Mikhail Glukhikh
eba0e94429
K2: get rid of manual diagnostic suppression in checkers
2022-07-22 11:35:28 +00:00
Mikhail Glukhikh
07f16ef378
K2 LL API: implement automatic diagnostic suppression
2022-07-22 11:35:27 +00:00
Mikhail Glukhikh
9add6f3d55
K2: add more accurate & more automatic control of diagnostic suppression
...
#KT-51363 Fixed
2022-07-22 11:35:26 +00:00