Commit Graph

1922 Commits

Author SHA1 Message Date
Ilya Kirillov 4530041cbb Analysis API: move reference resolve testsdata with errors to dedicated folders 2022-01-31 21:12:30 +01:00
Ilya Kirillov caddbda01b Analysis API FIR: introduce library resolve tests 2022-01-31 21:11:56 +01:00
Yahor Berdnikau 52a21a4e1a Remove 'noStdlib' from Gradle options
^KT-49011 Fixed
2022-01-31 17:28:13 +01:00
Yahor Berdnikau c019dbce47 Rename DeprecatedOption into GradleDeprecatedOption
This should make it more explicit

^KT-49011 In Progress
2022-01-31 17:28:13 +01:00
Ivan Kylchik a1b45755f1 Evaluate range classes in interpreter if constructor's body is missing 2022-01-28 18:44:46 +00:00
Dmitriy Dolovov 18cd07ea5f [Test] Fix proper use of annotation parameter names in generated classes
When an annotation parameter has a different name than "value" or there is more than one annotation parameter we need to specify annotation parameter names explicitly in generated Java source code.

Fix using classes as annotation parameters in generated classes
2022-01-28 16:23:35 +03:00
Georgy Bronnikov 4d2bcf7e66 IR: compute file local signatures from descriptors 2022-01-27 01:02:16 +03:00
Ivan Gavrilovic c93594331b [Gradle] Move some of the DSL to the API module
DSL exposed in the build scripts in effectively
an API, so this change moves it to the kotlin-gradle-plugin-api
subproject.

^KT-50869 In Progress
2022-01-21 16:57:23 +03:00
Nikita Bobko 9ec658b0ac [imltogradle] Fix kotlinc libs generator
kotlinc libs were changed from maven libs to plain JPS libs which
contain `../build/repo` jars

KT-MR-5457
2022-01-17 20:42:56 +01:00
Evgeniy.Zhelenskiy df1de3a7d3 [JVM] Forbid non-JvmInline value classes again 2022-01-14 13:51:56 +00:00
Evgeniy.Zhelenskiy 7595f798e1 [JVM] Introduce MF Value Classes to frontend 2022-01-14 13:51:55 +00:00
Nikita Bobko 208e271b4e Kotlin JPS plugin: fix paths in tests 2022-01-12 15:25:12 +01:00
Ilya Kirillov 11c50a48ba Analysis API: add isSubclassOf tests 2022-01-02 21:56:53 +03:00
Ilya Kirillov 5c22a03e82 FIR IDE: simplify test generation dsl 2022-01-02 21:56:51 +03:00
Ilya Kirillov 40fdb26569 Analysis LC: introduce Symbol LC tests 2021-12-27 16:23:18 +03:00
Ilya Kirillov d2832697d9 Move stub building test generation to analysis generator 2021-12-27 16:23:15 +03:00
Ilya Kirillov 1e9764c639 Move stub building from psi module to analysis module 2021-12-27 16:23:14 +03:00
Ilya Kirillov 02d68d7b12 Introduce cls stub building tests (mostly migrated from intellij) 2021-12-27 16:23:10 +03:00
Roman Artemev 7341a17a5d [IR] Cleanup ir serialization 2021-12-24 16:50:44 +03:00
Vyacheslav Gerasimov f7a9065b75 Build: Use intellij maven repo instead of downloaded IDEA
#KTI-82
2021-12-16 21:48:23 +03:00
Vyacheslav Gerasimov 049066f8ac Replace systemIndependentPath from Idea with invariantSeparatorsPath 2021-12-16 21:48:21 +03:00
Vyacheslav Gerasimov bc2f0936bd Build: Rename commonDep -> commonDependency 2021-12-16 21:48:19 +03:00
Evgeniy.Zhelenskiy ec2e96f3e4 Regenerate inline class tests as 1 arg value classes 2021-12-15 17:14:22 +00:00
Nikolay Krasko 00f0978b1d Minor: reformat + clean warnings in org.jetbrains.kotlin.generators.arguments.test 2021-12-15 19:18:55 +03:00
Tianyu Geng 5fbe5981f7 Analysis API: add KtType.isDenotable() 2021-12-15 16:09:31 +03:00
Dmitriy Dolovov 60dcafcf43 [Test] TestGen: Use canonical class names for generated imports
This is needed to have correct class names for inner/nested classes. For example, to have `import java.util.AbstractMap.SimpleEntry` instead of `import java.util.AbstractMap$SimpleEntry`.
2021-12-14 13:48:23 +03:00
Evgeniy.Zhelenskiy 1874318954 [Tests] Windows regeneration does not change tests 2021-12-13 17:54:15 +03:00
Evgeniy.Zhelenskiy b1d1f87318 [Tests] Introduce reversible source file preprocessor 2021-12-10 18:19:17 +03:00
Evgeniy.Zhelenskiy cb4ec932d7 [Tests] Introduce replacing source transformer 2021-12-10 18:19:17 +03:00
Evgeniy.Zhelenskiy cd1d77e760 [Tests] Regenerate tests with correct postfix 2021-12-10 18:19:17 +03:00
Evgeniy.Zhelenskiy 2874462e3a [Tests] Introduce transformers functions object 2021-12-10 18:19:16 +03:00
Evgeniy.Zhelenskiy c27b647ce8 [Tests] Native tests runTest applies source transformers 2021-12-10 18:19:16 +03:00
Evgeniy.Zhelenskiy 9b196c738f [Tests] Generify transforming tests method model 2021-12-10 18:19:16 +03:00
Evgeniy.Zhelenskiy e62c6e3eac [Tests] All tests correct generation 2021-12-10 18:19:16 +03:00
Evgeniy.Zhelenskiy f0af2487c7 [Tests] Replace @JvmInline with actual OPTIONAL_JVM_INLINE_ANNOTATION 2021-12-10 18:19:16 +03:00
Evgeniy.Zhelenskiy f92290dfdf [Tests] Generate runTest with transformer parameter + example 2021-12-10 18:19:15 +03:00
Tianyu Geng f197fc93db Analysis API: add test for KtDiagnosticsProvider 2021-12-09 15:56:52 +03:00
Tianyu Geng 9153db2ecc FE1.0 Analysis API: rewrite KtFe10CallResolver 2021-12-09 11:01:52 +01:00
Tianyu Geng f1bd3597f8 FE1.0 Analysis API: make KtSymbol only reference declaration-site subst-overrides
This is the FE1.0 counterpart of fa8bb47bdf
2021-12-09 11:01:52 +01:00
Tianyu Geng eeb4e4278d FE1.0 Analysis API: comment out KtFe10CallResolver for now 2021-12-06 12:40:43 +01:00
Dmitriy Novozhilov 77101edfa4 [FIR] Setup tests for IC with compiler plugins
Most of those tests are ignored, because IC is not supported properly
  for compiler plugins. This commit is needed to prepare infrastructure,
  fix current behaviour and collect main problems of IC with plugins

Check fail.txt files in new testdata for explanation of problems
2021-12-03 14:17:41 +03:00
Dmitriy Novozhilov 1d32d5c7d8 [FIR] Slightly reorganize directory structure of FIR plugin prototype 2021-12-03 14:17:38 +03:00
Dmitriy Novozhilov d585027431 [FIR] Rename tests of FIR plugin prototype 2021-12-03 14:17:36 +03:00
Dmitriy Novozhilov 86404b8027 [FIR] Implement IR body generators for all FIR declarations generators in plugin prototype 2021-12-03 14:17:34 +03:00
mvicsokolova 93561a1a55 kotlinx.atomicfu compiler plugin for JS_IR backend (#4581)
* kotlinx.atomicfu compiler plugin for JS_IR

Support transformations of atomic operations introduced by the kotlinx.atomicfu library for the JS_IR backend. Compiler plugin is applied externally by the kotlinx.atomicfu gradle plugin.

* Apply compiler plugin for JS platform only

* New plugin test structure

* testGroupOutputDirPrefix changed
2021-12-01 22:33:13 +03:00
Tianyu Geng f1d0791f15 Analysis API: add test for KtDeclaration.getReturnKtType
FE1.0 always return kotlin.Unit as return type for constructors while
FIR returns the constructed class type. I am not sure which is more
desirable. Also, I am not sure how to make FE1.0 behave the same way.
2021-11-30 18:02:33 +01:00
Roman Golyshev fa8bb47bdf [FIR IDE] Add unwrapping substitution overrides which doesn't affect function's signature
Also, do not use PSI to restore SUBSTITUTION_OVERRIDE function/property
symbols
2021-11-25 21:19:56 +03:00
Dmitriy Novozhilov 8cdddbfd9d [FIR] Implement checkers for FIR parcelize plugin
There is one of checks left unimplemented (FirParcelizePropertyChecker.checkParcelableClassProperty)
  because it requires huge commonization of detecting which type can be
  serialized and which not, which is not prioritized job for now
2021-11-23 15:01:31 +03:00
Dmitriy Novozhilov eac9a9fc79 [FIR] Implement FIR version of parcelize plugin
This commit includes only generation of declarations and
  ir backend part, checkers are added in separate commit
2021-11-23 15:01:29 +03:00
Dmitriy Novozhilov 40d8451698 Add compiler diagnostic tests for parcelize checkers 2021-11-23 15:01:26 +03:00