Commit Graph

60334 Commits

Author SHA1 Message Date
Dmitry Petrov 0e4e5ac287 Update nullability assertion tests that use newer Java features 2019-12-31 11:14:52 +03:00
Dmitry Petrov d622542824 PSI2IR: Fix delegated members generation
When generating bodies for members implemented by delegation, invoke
corresponding delegate member, not an interface member. Otherwise we
might lose platform-specific nullability information in case of mixed
Kotlin-Java hierarchies, as in
implicitNotNullOnDelegatedImplementation.kt
2019-12-30 18:36:16 +03:00
Alexander Udalov cc0b231b3b Convert SyntheticMethodForAnnotatedPropertyGenTest to a box test 2019-12-30 16:30:50 +01:00
Alexander Udalov 8f30b25b24 Minor, fix some codegen tests for language version 1.4
These tests check behavior of an old language version on purpose: the
original bug KT-24708 has been fixed by introducing an error here in
1.4.
2019-12-30 16:30:45 +01:00
Alexander Udalov e2a42446ed Use getter names for $annotations methods in most codegen tests
This is needed to update master to 1.4, while still testing the latest
compiler by default. Also add one test on the old behavior.
2019-12-30 16:29:13 +01:00
Dmitry Petrov 330dd789de Minor: mute test in FIR+JVM_IR 2019-12-30 16:08:44 +03:00
Nikolay Krasko c7d39b612c Simplify adding Kotlin sdk by inlining internals of ProjectSdksModel
Because of using cloning sdks inside ProjectSdksModel tests fail with sdk leaked errors.
2019-12-30 13:50:12 +03:00
Nikolay Krasko 70067bc9bf Better fix for compiler plugin test initialization
The previous one didn't work in 191.
Also revert changes in tests-common module.
2019-12-30 13:22:34 +03:00
Simon Ogorodnik 1715f1a864 [FIR] Refactoring: create use-site scopes via scope provider 2019-12-30 12:52:58 +03:00
Mikhail Glukhikh 5f08fe88a5 [FIR] Move ScopeSession to fir:tree 2019-12-30 12:52:53 +03:00
Dmitry Petrov 98bf0e278f Fix problem with empty vararg of boxed primitives in JVM_IR
When calling a generic Java generic method with vararg parameters with empty
vararg, incorrect array creation instruction was generated for primitive type:
NEWARRAY T_INT instead of ANEWARRAY java/lang/Integer. Here for Java method

  public static <T> void takesVarargOfT(T x1, T... xs) {}

corresponding vararg parameter was considered to be of type 'Array<T>?',
which is not a non-null array type, so, NewArray intrinsic failed to generate
proper bytecode.
2019-12-30 11:26:21 +03:00
Dmitry Petrov 0667ee9796 Minor: optimize imports 2019-12-30 11:26:21 +03:00
Dmitry Petrov 76e7a9ba4a Generate instructions as text in case of other exceptions
It makes possible to analyze what causes a failure if DxChecker.check fails
2019-12-30 11:26:21 +03:00
Mikhael Bogdanov 4b6202c902 JVM_IR. Support inlining of bound CR 2019-12-30 08:35:46 +01:00
Roman Golyshev 42deb7db48 KT-34582 Exclude kotlin.coroutines.experimental package from completion and auto-import
- Exclusion happens only when `ReleaseCoroutines` feature is supported
- Add `LANGUAGE_VERSION` to few tests to make sure that previous exclusions still work when `experimental` package is not excluded entirely
- ^KT-34582 Fixed
2019-12-29 15:35:49 +03:00
Pavel Kirpichenkov 8399614de8 Move muted test failing on all platforms to mute-common
KT-35728
2019-12-28 13:18:00 +03:00
Ilya Gorbunov a98f36bce4 Reorganize existing Closeable/AutoCloseable.use tests 2019-12-28 03:02:01 +03:00
Toshiaki Kameyama 941de655c4 Add contract for 'use'
#KT-35216 Fixed
2019-12-28 02:54:29 +03:00
Ilya Gorbunov 043eddb432 Cleanup: use effects introduced by contracts of assert* functions 2019-12-28 02:51:56 +03:00
Zalim Bashorov 04fe0dc795 Minor: enable commit message inspections in IDEA 2019-12-27 22:34:02 +03:00
Zalim Bashorov 9cf1a2b404 [Build] Remove the property to skip JS IR BE tests
It's no longer needed since we going to start building libraries using the new BE,
so we have to be sure that everything works well in releases branches too.
2019-12-27 22:34:02 +03:00
Zalim Bashorov 9557034cf7 [Build] Mark tmp dir in the root of project as excluded 2019-12-27 22:34:02 +03:00
Pavel Kirpichenkov 40812cd116 Mute quickfix test (KT-35728) 2019-12-27 19:01:32 +03:00
Pavel Kirpichenkov 2d21b82501 [NI] Remove hack for special functions
Treating special functions for `if`, `when`, `try`, `?:` as not accepting `Nothing` result type is incorrect.
Making so leads to cases with uninferred `Nothing` result type for inner calls and lost data flow info.
2019-12-27 18:40:42 +03:00
Alexander Gorshenev 9a12641fde Allow parallel access to klib zip filesystem 2019-12-27 18:19:48 +03:00
Nikolay Krasko ddda93ad96 Mute flaky JavaAgainstKotlin.testUsingMutableInterfaces 2019-12-27 16:53:21 +03:00
Nikolay Krasko e20c66011a Enable mute tests feature for BuiltInDecompilerTest 2019-12-27 16:53:20 +03:00
Nikolay Krasko 28e23f0aa8 Mute flaky step over tests on Android Studio 2019-12-27 16:53:20 +03:00
Nikolay Krasko 11e4b710b5 Mute GradleMigrateTest.testMigrateStdlib in AS 2019-12-27 16:53:19 +03:00
Nikolay Krasko 77edfed764 Mute tests for preferring JDK classes in completion and auto-import in 191 and 192 (KT-35709)
BasicCompletionWeigherTestGenerated.testPreferFromJdk
AutoImports.testAmbiguousNamePreferFromJdk
2019-12-27 16:53:19 +03:00
Nikolay Krasko 74e2c98426 Fix test data for QuickFixTestGenerated.SupertypeInitialization in 191 2019-12-27 16:53:19 +03:00
Nikolay Krasko 0d48855333 Mute JavaToKotlinConverterSingleFileTestGenerated in 191 2019-12-27 16:53:18 +03:00
Nikolay Krasko 28eb6a223d Fix UpdateConfigurationQuickFixTest.testEnableCoroutinesFacet test 2019-12-27 16:53:18 +03:00
Nikolay Krasko 4c28e0dec3 Split tests to common and platform parts 2019-12-27 16:53:17 +03:00
Nikolay Krasko 570b522e8e Minor: sort tests in mute database 2019-12-27 16:53:17 +03:00
Mikhail Glukhikh 6da3c2fa4e FIR2IR: set parent correctly (~) for anonymous functions 2019-12-27 16:13:02 +03:00
Natalia Selezneva a653feb2dc Scripting: use VFS events instead of document changes to track changes outside of IDE (KT-35557)
^KT-35557 Fixed
2019-12-27 15:57:11 +03:00
Natalia Selezneva 6bf0e4b1a9 Simplify check for that gradle script configurations is up to date
Get time stamp for script inputs before gradle import
2019-12-27 15:57:11 +03:00
Natalia Selezneva 3dfbd824e4 Implement persistent storage for time stamps of files that affect build script configuration (KT-3556)
^KT-3556 Fixed
2019-12-27 15:57:11 +03:00
Natalia Selezneva ecb05ace91 Scripting: extract API to check if script is related to any gradle project
KT-35268 cannot be implemented without explicit action for loading configurations for script outside of project model

^KT-35268
^KT-34625
2019-12-27 15:57:11 +03:00
Toshiaki Kameyama 716036a000 RemoveModifierFix: fix message for 'companion object'
#KT-35604 Fixed
2019-12-27 15:38:32 +03:00
Juan Chen 3dc58bc995 [FIR2IR] Fix translating primitive array types
This commit fixes two issues in the existing implementation of translating primitive array types:

 * IrType.getArrayElementType throws an exception when the receiver is a primitive array type, because IR expects primitive array types use symbols defined in IrBuiltIns, but fir2ir translation doesn't;
 * IteratorNext.toCallable assumes all element types are boxed.

The first issue is fixed by changing the fir2ir type translation to use symbols in IrBuiltIns for primitive array types, and the second by not unboxing primitive types.
2019-12-27 15:32:18 +03:00
Mikhail Glukhikh 1cf582e9ed FIR2IR: set extension receiver for anonymous functions 2019-12-27 15:31:36 +03:00
Mikhail Glukhikh aa796e962a FIR2IR (minor): remove duplicate of generateErrorCallExpression 2019-12-27 15:10:23 +03:00
Mikhail Zarechenskiy 95dd322bf0 Update FIR diagnostics test 2019-12-27 14:11:47 +03:00
Mikhail Glukhikh e4b2c238c7 FIR2IR: temporarily allow null receivers & use findIr*Receiver also for fields 2019-12-27 13:46:06 +03:00
Mikhail Glukhikh 338281e05f [FIR TEST]: add test for KT-35730 2019-12-27 13:46:06 +03:00
Mikhail Glukhikh 15f373a864 FIR2IR: support object receiver case (this fixes 24 black box tests) 2019-12-27 13:46:05 +03:00
Mikhail Glukhikh f3b5ee4cba FIR2IR: fix assertion in getIrFunctionSymbol (anonymous function case) 2019-12-27 13:46:05 +03:00
simon.ogorodnik 5e426fdc71 [FIR] Optimization & checking fix: remove usage of dispatchReceiverValue 2019-12-27 13:45:59 +03:00