Commit Graph

91892 Commits

Author SHA1 Message Date
Ilya Chernikov 4ec639cafd Scripting: relocate 3-party libs in dependencies-maven-all
#KT-50378 fixes, and will prevent similar cases for now
2022-04-04 14:55:52 +00:00
Ilya Chernikov 6564632b58 FIR: Implement build properties for LightTree and tight IC cycle 2022-04-04 14:13:50 +00:00
Vsevolod Tolstopyatov 82c959c4be KT-51082 introduce Class<E : Enum<E>>.declaringJavaClass as a future replacement for synthetic declaringClass 2022-04-04 13:36:14 +00:00
Mikhail Glukhikh 6bb24e0153 Delay ForbidUsingExtensionPropertyTypeParameterInDelegate bugfix to 1.8
Related to KT-24643
2022-04-04 13:27:51 +00:00
Yahor Berdnikau 6ddb76743a Fix multi-project incremental JS tests are not actually running 2022-04-04 15:09:38 +02:00
Mikhail Glukhikh edeb4688dc Code cleanup: FunctionInvokeDescriptor 2022-04-04 13:08:28 +00:00
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