Ilya Kirillov
4d5f1dc1bb
[FIR] do not fail when Continuation classes not found in classpath
2022-08-10 22:49:12 +02:00
Jinseong Jeon
d0a8eb5c54
AA FIR: use resolved annotation argument mapping
2022-08-10 17:34:48 +02:00
Jinseong Jeon
56a5d883c0
AA FIR: handle (aliased)? annotation w/ vararg parameter
2022-08-10 17:34:48 +02:00
Pavel Kunyavskiy
18cda8844d
[K/N] Fix possible data races found by thread sanitizer
2022-08-10 08:36:07 +00:00
Vsevolod Tolstopyatov
fdd541c1e9
Introduce runtime ClassValue-based cache for typeOf machinery
...
* Cache KType instances constructor from the given classifier
* For generics, cache KTypes with already substituted arguments
* It significantly speeds up all typeOf-based APIs, both accesses to typeOf and its related properties (i.e. classifier)
#KT-53508
Merge-request: KT-MR-6818
Merged-by: Vsevolod Tolstopyatov <qwwdfsad@gmail.com >
2022-08-09 18:40:32 +00:00
Artem Kobzar
87038e7d8a
[K/JS] feat: add logic under the flag for strict implicit export generating inside d.ts files.
2022-08-09 16:48:59 +00:00
Alexander Korepanov
bb8da65188
[Common IR] Do inlining of callable references of inline functions
...
^KT-52805 Fixed
2022-08-08 17:40:45 +00:00
Pavel Kunyavskiy
3424e756ad
[K/N] Fix for instantiating annotations from already lowered file
...
If annotation class is already lowered, it can have more than one
constructor. So we should use primary one, not any one.
^KT-53475
2022-08-08 16:35:22 +00:00
Vsevolod Tolstopyatov
c6cbab43f7
Introduce KClass-based cache for KPackageFragment
...
* It is a heavy-weight object that is hard to compute
* It is being constructed each type _cached_ method ref is used in equals/hashCode
* Module name is deliberately ignored, corresponding doc is added where appropriate
#KT-48136
Merge-request: KT-MR-6817
Merged-by: Vsevolod Tolstopyatov <qwwdfsad@gmail.com >
2022-08-08 15:57:56 +00:00
Alexander Korepanov
794229d012
[box-tests] Add tests about anonymous classes uplifting
...
^KT-50175 Fixed by commits before
2022-08-08 08:39:59 +00:00
Igor Chevdar
c5eb6fb562
[IR] Fixed a bunch of bugs near local objects in inline lambdas
2022-08-08 08:39:58 +00:00
Igor Chevdar
e38f02b53a
[box-tests] Added a bunch of tests on local objects in inline lambdas
2022-08-08 08:39:57 +00:00
Igor Chevdar
7090a2716a
[box-tests] Made test Native-specific
...
Seems like other backends don't like top level lateinit properties
2022-08-07 08:23:41 +03:00
Igor Chevdar
6799988227
[box-tests] Added a multi-module test on lateinit properties
2022-08-06 17:40:27 +00:00
Igor Chevdar
8041692144
[box-tests] Disabled a test for K/N
...
The test isn't passing when using K/N per-file caches and in order to fix it,
some hacks are required, which isn't worth it considering that test contains invalid code.
2022-08-06 17:40:26 +00:00
Igor Chevdar
7e4f94ed2c
[IR] Fix for per-file caches support in K/N
2022-08-06 17:40:25 +00:00
Igor Chevdar
030e3b306f
[K/N][build] Added -Xmake-per-file-cache compiler option
2022-08-06 17:40:24 +00:00
Igor Chevdar
7e79b2b500
[K/N][IR][codegen] Preliminary support of per-file caches
2022-08-06 17:40:23 +00:00
Mikhail Glukhikh
2598ecf23f
Revert "K2: fix internal visibility checks for overrides #KT-53197 Fixed"
...
This reverts commit 166965e559 .
2022-08-05 18:26:59 +02:00
Vsevolod Tolstopyatov
14b13a2f17
[kotlin.reflect] Introduce ClassValue-based cache for KClassImpl
...
* Replace pcollections with ClassValue/ConcurrentHashMap-based caches
* Do not store weak references, instead cache strong references and count on ClassValue to unload the corresponding classloader if necessary
* ConcurrentHashMap does not rely on WeakReference as it's only selected on Android where classloader leaks don't exist
* Update reflect/scripting JDK requirement to Java 8 in order to proceed
#KT-53454
#KT-50705
Merge-request: KT-MR-6788
Merged-by: Vsevolod Tolstopyatov <qwwdfsad@gmail.com >
2022-08-05 15:35:34 +00:00
Ivan Kochurkin
09a72fd679
Extract immutable arrays to fields in IrBuiltInsOverFir
2022-08-05 13:20:41 +00:00
Ivan Kochurkin
c0fe14a091
Make myExpressionParsing final (Parser)
2022-08-05 13:20:41 +00:00
Ivan Kochurkin
daeb41b411
Minor fixes in parser
2022-08-05 13:20:40 +00:00
Ivan Kochurkin
1d73d4cfbf
Reduce allocations in lastDotAfterReceiver (parsing)
2022-08-05 13:20:40 +00:00
Ivan Kochurkin
cf190f0cf2
Use switch case statement instead of sequence of if comparisons in parser
2022-08-05 13:20:39 +00:00
Ivan Kochurkin
6bb2af142c
Use static initialization for token sets that are used in expect method in Kotlin parser
2022-08-05 13:20:39 +00:00
Dmitry Gridin
4ceb170917
regenerate tests
2022-08-05 14:12:41 +02:00
Sergej Jaskiewicz
2ece4f4dbf
[JS IR] Improve the precision of execution of stepping tests
2022-08-05 11:53:40 +00:00
Hung Nguyen
98349411fb
Always compile non-incrementally if incremental state is missing
...
Test: Updated IncrementalCompilationClasspathSnapshotJvmMultiProjectIT.
.testMissingIncrementalState
^KT-53231 Fixed
2022-08-05 07:45:24 +00:00
Hung Nguyen
e006a7af57
Shrink snapshots non-incrementally after fallback
...
If incremental compilation fails, we currently fall back to
non-incremental compilation. When that happens, it would be incorrect to
shrink classpath snapshot incrementally, so this commit makes sure we'll
shrink classpath snapshot non-incrementally in that case.
^KT-53231 In progress
2022-08-05 07:45:22 +00:00
Simon Ogorodnik
2a16fe1d0f
FIR: Fix overloading by type-arguments
...
In K1, upper bound violated causes candidate to have lower applicability
due to constraint errors, in K2 however constraint errors has to be
reported explicitly
2022-08-04 22:56:08 +02:00
Artem Kobzar
2d85eddeb9
[FIR] test: add a test case for reified inline functions with a same name in different packages.
2022-08-04 22:56:07 +02:00
Denis.Zharkov
11a26e540e
Revert "KT-35811: Type parameter angle brackets followed by equal sign are parsed incorrectly if whitespace is missing"
...
This reverts commit a2077f9063 .
2022-08-04 17:50:00 +02:00
Denis.Zharkov
2ae2a7e442
Revert "KT-8263: Conditional operators are not parsed correctly"
...
This reverts commit 85800b4f9f .
2022-08-04 17:49:42 +02:00
Igor Chevdar
b82554dea1
[utils][K/N] Added some util functions to File
2022-08-04 14:12:05 +00:00
Iven Krall
85800b4f9f
KT-8263: Conditional operators are not parsed correctly
2022-08-04 11:24:09 +00:00
Iven Krall
a2077f9063
KT-35811: Type parameter angle brackets followed by equal sign are parsed incorrectly if whitespace is missing
2022-08-04 11:24:08 +00:00
Ilya Gorbunov
f91ea4b4d9
Add more tests for 'contains' in ranges #KT-52933
...
- ranges produced by 'rangeUntil' operator
- ranges of unsigned values
- more elements in ranges produced by `downTo`
2022-08-03 22:18:14 +00:00
Ilya Gorbunov
a044555299
Do not run rangeUntil operator tests in old JVM BE #KT-52933
2022-08-03 22:18:12 +00:00
Sergej Jaskiewicz
5e34ae5e0d
[IR] Print annotations in source range compiler tests
2022-08-03 16:45:56 +00:00
Sergej Jaskiewicz
9dc7fe24f6
[psi2ir] Emit source info for annotation parameters
...
We need this in the JS IR backend for annotations like
@JsFun and @JsPolyfill
2022-08-03 16:45:55 +00:00
Aleksei.Cherepanov
92551b7685
Prevent overwriting output dir to empty string
...
#KTIJ-921 Fixed
Co-authored-by: Alexander Udalov <Alexander.Udalov@jetbrains.com >
Merge-request: KT-MR-6183
Merged-by: Aleksei Cherepanov <aleksei.cherepanov@jetbrains.com >
2022-08-03 14:46:32 +00:00
Artem Kobzar
b9a80284c8
[K/JS] fix(TS): save type hierarchy for exported classes.
2022-08-03 14:16:30 +00:00
Mikhail Glukhikh
166965e559
K2: fix internal visibility checks for overrides #KT-53197 Fixed
2022-08-03 07:52:14 +00:00
Jinseong Jeon
199219483e
FIR LC: set modifier list as a parent of light annotations
...
^KTIJ-22354 Fixed
2022-08-03 08:57:37 +02:00
Steven Schäfer
03aee58585
JVM IR: Avoid IrComposite in ReturnableBlockLowering (KT-53202)
2022-08-03 00:19:31 +02:00
Mikhail Glukhikh
3cb4b8ddda
Fix KotlinTypeCheckerTest in accordance with NI intersections
2022-08-02 10:29:41 +00:00
Victor Petukhov
9beb279964
[FE CLI] Remove -Xnew-inference in the compiler cli module settings
2022-08-02 10:29:40 +00:00
Victor Petukhov
34a05105ef
[FE 1.0] Get rid of NewResolutionOldInference
2022-08-02 10:29:39 +00:00
Victor Petukhov
d89fa8dea9
[FE 1.0] Get rid of OldResolutionCandidate and its usages
2022-08-02 10:29:39 +00:00