Ilya Kirillov
74273c6273
[Analysis API FIR] do not check for write access on inside ShortenCommandImpl as it breaks intention preview in IDE
2022-07-24 18:59:03 +02:00
Ilya Kirillov
91cf194a94
[LL FIR] incrementally update module caches
2022-07-24 15:37:44 +02: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
6f0769ea68
[LL FIR] add detailed exception info to lazy resolve
2022-07-23 17:08:22 +02:00
Ilya Kirillov
e462016151
[LL FIR] remove abstract class LLFirModuleData with only inheritor
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
Ilya Kirillov
b701c1c6f6
[LL FIR] fix top-level callables classpath conflicts checks for single-file facades
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
Ilya Kirillov
62c12864f3
[Symbol LC] do not fail in LC on enum subtyping check
2022-07-22 23:13:23 +02:00
Ilya Kirillov
71dd066288
[Analysis API] do not consider recursive module dependencies as scope
2022-07-22 22:53:37 +02:00
Ilya Kirillov
c7a49b5ed1
[Analysis API FIR] do not fail on ConeTypeVariableType
2022-07-22 22:53:11 +02:00
Ilya Kirillov
2ffa03e831
[Analysis API FIR] fix expanding of anonymous objects in getClassOrObjectSymbol
2022-07-22 22:14:52 +02:00
Igor Chevdar
652f6923b3
[K/N][runtime][codegen] Fixed a problem with synchronization
...
During globals initialization proper synchronization is required for ARM cpus
#KT-53243 Fixed
2022-07-22 16:53:07 +00: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
Pavel Kunyavskiy
9f5cbea0fa
[K/N] Disable runtimeAssertions with cache in old test infra
2022-07-22 16:07:52 +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
Yahor Berdnikau
3c0c477f06
Enable filesystem watching by default in Gradle tests
...
This should reduce flakiness on CI.
2022-07-22 12:02:43 +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
Sergey Bogolepov
30f1af7ce0
[K/N] Move isFinalBinary and involvesLinkStage checks to KonanConfig
...
It allows to make more precise checks by accessing KonanConfig
properties.
2022-07-22 11:57:13 +00:00
Sergey Bogolepov
ebe292ffe9
[K/N] Simplify phases configuration
...
Group simultaneously disabled phases into single `if` to improve
readability and avoid repetition.
2022-07-22 11:57:12 +00:00
Sergey Bogolepov
88eee13837
[K/N] Destroy symbol table when producing metadata library.
...
Probably it wasn't destroyed by mistake.
2022-07-22 11:57:12 +00:00
Sergey Bogolepov
7055893605
[K/N] Move framework interface generation to "Produce Output" phase
...
It allows to invoke interface generation even if we don't compile a
binary.
2022-07-22 11:57:11 +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
Mikhail Glukhikh
179b267d9f
K2: add test with some samples of diagnostic suppression
2022-07-22 11:35:25 +00:00
Ilya Goncharov
4284f6b573
[Gradle, JS] make state in KotlinRootNpmResolverStateHolder public
2022-07-22 07:00:37 +00:00