Mikhail Glukhikh
0ef32e5807
Don't create substituted copy of invoke descriptor with unchanged names
...
#KT-34919 Fixed
2022-04-04 13:08:28 +00:00
Mikhail Glukhikh
04e8e1b2ad
Move file annotation resolve a bit earlier #KT-51499 Fixed
2022-04-04 12:51:34 +00:00
Mikhail Glukhikh
899dc401c8
Add test for KT-51499 (occurs in FE10, already fixed in FIR)
2022-04-04 12:51:33 +00:00
Yahor Berdnikau
7ffb232a95
Remove 'kotlin-dce-js' Gradle plugin
...
^KT-48276 In Progress
2022-04-04 12:19:05 +02:00
Yahor Berdnikau
bc066e1863
Set minimal supported AGP version to 3.6.4
...
^KT-51342 Fixed
2022-04-04 07:32:53 +00:00
Yahor Berdnikau
785831c82a
Add 'NormalizeLineEndings' to cacheable tasks and transformations
...
^KT-50673 Fixed
2022-04-04 07:29:56 +00:00
Yahor Berdnikau
5733ed5c76
Bump Gradle api version to 7.2
...
^KT-50673 In Progress
2022-04-04 07:29:56 +00:00
Alexander Udalov
9c78d57de2
Configure SAXParserFactory to avoid XXE references
...
#KT-51519 Fixed
2022-04-03 00:49:21 +02:00
Mikhail Glukhikh
d01e6b61a3
FIR: don't report PRIMARY_CONSTRUCTOR_DELEGATION_CALL_EXPECTED in exp.cl.
...
#KT-51761 Fixed
2022-04-01 16:15:53 +03:00
Mikhail Glukhikh
aaebb7a30e
FIR: don't create delegated constructor call in expect
...
#KT-51756 Fixed
2022-04-01 16:15:53 +03:00
Yahor Berdnikau
16027b4531
Enable cache-redirector for Kotlin/Native compiler download
...
^KT-46935 Fixed
2022-04-01 12:01:09 +00:00
Stanislav Erokhin
7c53685de4
Restore API used in Android safeArg plugin
...
See IDEA/f53c2114c38f856bdf0ff4d01de9fffeeeb630f2 commit.
In 222+ IDEA usage of the old ErrorUtils (and other classes)
was eliminated, but not in the 211-221 versions.
Relevant Kotlin commit: b5933c70e2
Also, there is usages of UnresolvedType or ErrorType from
the org.jetbrains.kotlin.types package in the safeargs tests,
but it is difficult to restore the compatibility for them.
So, I decided that it is ok to eliminate them in the
`kt-[212|213|221]-*` branches, because it is tests and not
production
2022-04-01 12:43:16 +02:00
Dmitriy Novozhilov
6722ec1dad
Fix typo
2022-04-01 10:14:58 +04:00
Aurimas
1a40eabbbd
Fix for KT-51765
...
Kotlin Gradle plugin was incorrectly assuming that com.android.lint implies an Android project.
com.android.lint works for any JVM project and is used that way in various projects.
2022-03-31 16:28:19 +02:00
Alexander Dudinsky
86d8ef7e45
Migration HierarchicalMppIT tests to new DSL
...
^KT-50912
2022-03-31 13:24:33 +00:00
Artem Kobzar
c56f06f942
test: change function id in implicit cast test to prevent name clash.
2022-03-31 09:59:46 +00:00
Sergej Jaskiewicz
f7933dc9f4
[JS IR] Verify that we don't generate Unit_getInstance() statements
...
See: KT-51127
2022-03-31 09:46:51 +00:00
Alexander Shabalin
421ad77740
[K/N] Simplify ObjectFactory ^KT-51436
...
Merge-request: KT-MR-5958
Merged-by: Alexander Shabalin <Alexander.Shabalin@jetbrains.com >
2022-03-31 09:43:47 +00:00
Pavel Kunyavskiy
4873f18067
[K/N] Enable definitely not null cast test for native
2022-03-31 09:02:14 +00:00
Elena Lepilkina
cb0acaa469
[K/N][perf] Small fixes for release builds and some type of benchmarks reports
2022-03-31 09:00:46 +00:00
Dmitriy Dolovov
053ddb51ce
[Gradle, Native] Propagate -Xpartial-linkage flag to compiler invocations that build static cache for 3rd-party and user libs
...
^KT-51441
2022-03-30 20:31:31 +03:00
Ilmir Usmanov
7579be6c68
Generate CHECKCAST after ACONST_NULL in coroutines
...
If we do not do this, the state-machine builder will not know the type
of the ACONST_NULL, defaulting to Object, leading to VerifyError.
Alternatively, we could use LVT to deduce the type, but getting types
from LVT is something I got rid of long time ago, and I have no desire
to return it back.
Generating CHECKCAST hints the state-machine builder the type of the
variable avoiding the issue of VerifyError. However, this CHECKCAST
replaces StrictBasicValue.NULL_VALUE with BasicValue in
OptimizationBasicInterpreter. To preserve optimization on not-spilling
known nulls, introduce BasicValues, which represent typed nulls and
create BasicInterpreter, which is aware of them. This way we have the
best of two worlds - we do not spill known nulls, and we know the type
of ACONST_NULL.
#KT-51718 Fixed
2022-03-30 14:27:29 +00:00
Sergey Bogolepov
9b103b35cd
[K/N] Replace destinationDir with destinationDirectory.
...
Breaking change was introduced in e9498c8 .
2022-03-30 12:17:22 +03:00
Ilya Chernikov
5d6e2b57a7
Sort sealed class inheritors to ensure reproducible builds with IC
...
without this sorting the inheritors field in the metadata may depend on
whether some inheritors are compiled in the IC round or not.
2022-03-30 08:35:30 +00:00
Ilya Chernikov
53bc593062
Fix interpreter tests after changing offset calculation
2022-03-30 08:35:21 +00:00
Ilya Chernikov
738c1f34df
FIR2IR: Fix offsets calculation for qualified expressions
2022-03-30 08:35:13 +00:00
Ilya Chernikov
a65c102469
FIR LT: fix modality for default accessors in LT converter
2022-03-30 08:35:06 +00:00
Ilya Chernikov
b3f9e7d361
FIR LT: "fix" tree compare tests by ignoring diagnostic in error types
2022-03-30 08:34:59 +00:00
Ilya Chernikov
c4a29651b0
FIR IC: fix test with behavior different from non-tight cycle variants
2022-03-30 08:34:51 +00:00
Ilya Chernikov
f2ddac3ece
IC: Adopt IC compilation for case then runCompiler adds some dirty files
...
as it is the case for Fir IC compilation.
2022-03-30 08:34:44 +00:00
Ilya Chernikov
27a3c77174
Temporary restore generation state and related PSI-based APIs
...
Changes required on IDE plugin side before applying API changes.
2022-03-30 08:34:36 +00:00
Ilya Chernikov
03cbfea737
FIR LT: Introduce source file abstraction, carry it from parsing to IR
...
along with source lines mapping, allows to "emulate" usage of the
PSI files which allows to extract source file and line mapping info
on every stage from source element.
It makes sense to use this mapping for the error reporting too.
2022-03-30 08:34:30 +00:00
Ilya Chernikov
bd60d4b2a6
FIR LT: Add box inline tests for FIR + LT (failing on SMAP so far)
2022-03-30 08:34:21 +00:00
Ilya Chernikov
ae10346d75
Refactor FIR diagnostics: cleanup and extract position finder
...
for reusing the latter in the inliner for LT-based sources
2022-03-30 08:34:13 +00:00
Ilya Chernikov
25e9de286d
Test infra: adapt blackbox test runner to work with non-psi sources
2022-03-30 08:34:06 +00:00
Ilya Chernikov
2044754628
Backend: remove psi files from generation state
...
pass them explicitly to all destinations. This is a step in attempt to
abstract dependencies on PSI in the GenerationState and related places.
2022-03-30 08:33:59 +00:00
Ilya Chernikov
da41fddabb
Backend: remove codegen factory from generation state
...
use it explicitly. This is a step in attempt to abstract dependencies
on PSI in the GenerationState and related places.
2022-03-30 08:33:51 +00:00
Ilya Chernikov
018782f0c7
FIR CLI: use VFS for LT files loading
...
may improve performance in some cases and is consistent with handling
of PSI files
2022-03-30 08:33:43 +00:00
Ilya Chernikov
506152020d
FIR: fix LT conversion of imports with backticks
2022-03-30 08:33:35 +00:00
Ilya Chernikov
a08e70ae5c
FIR CLI: fix java sources search scope usage
2022-03-30 08:33:27 +00:00
Ilya Chernikov
0df3fde37f
FIR: implement computeOrigin for IR without accessing sources
...
fixes LT compilation too
2022-03-30 08:33:18 +00:00
Ilya Chernikov
973273c6c6
FIR CLI: count lines/files and report events to perfman
2022-03-30 08:33:11 +00:00
Ilya Chernikov
090a451902
FIR: implement proper exit on errors in new cli pipeline
2022-03-30 08:33:03 +00:00
Ilya Chernikov
f89765eb33
Make JDK classpath roots configuration explicit...
...
instead of relying on the "configuration files" parameter.
(in the process of migration from KotlinCoreEnvironment).
2022-03-30 08:32:56 +00:00
Ilya Chernikov
9d2cadc908
[minor] scripting fixes in obsolete and test code...
...
relax acceptedAnnotations extraction rules for obsolete script template
handling code - the previous variant was failing on the typealias
comparison
also reduce warnings and possible exceptions on some test execution
paths
2022-03-30 08:32:48 +00:00
Ilya Chernikov
806bf8a735
IR [minor]: do not assume that ktfile is always accessible
2022-03-30 08:32:40 +00:00
Ilya Chernikov
b27a223b98
IR: use jvm name annotations for package class naming for non-psi cases
2022-03-30 08:32:32 +00:00
Ilya Chernikov
5e007f9179
IR: fix FileClassInfo generation from source-based entry
...
assuming that it's name contains path, symmetrical to the PSI variant
2022-03-30 08:32:24 +00:00
Ilya Chernikov
5abdf93d3b
IC: Add IC test with fix on rename file with only class inside
...
"fails" on JS and JPS tests - the IC logic there is less precise.
2022-03-30 08:32:17 +00:00
Ilya Chernikov
3220900abe
FIR: add tests for IC with LT and new CLI pipeline
2022-03-30 08:32:10 +00:00