Commit Graph

42534 Commits

Author SHA1 Message Date
Mikhail Zarechenskiy d45f4e71de [NI] Don't try to search methods on undefined integer type 2017-11-13 16:31:22 +03:00
Mikhail Zarechenskiy 4ad885afb0 [NI] Correctly propagate base constraint system of invoke call
Consider the following example:

class A {
  operator fun <T> invoke(): Foo<T> = throw Exception()
}

fun foo(f: Foo<Int>) {}

fun test(a: A) {
  foo(a()) // after resolve of `invoke`, it has non-fixed type variable
}
2017-11-13 16:31:04 +03:00
Mikhail Zarechenskiy 28e539b158 Simplify CompilerTestLanguageVersionSettings: merge two maps into one 2017-11-13 16:27:26 +03:00
Mikhail Zarechenskiy cd2d32d92a Set up specific LV settings for compiler tests
For example, to configure NI

(cherry picked from commit e0c6aec)
2017-11-13 16:27:25 +03:00
Mikhail Zarechenskiy 91a6591b70 Load compiler language version settings for resolved calls tests 2017-11-13 16:27:24 +03:00
Mikhail Zarechenskiy 20bf238006 Load compiler language version settings for codegen tests 2017-11-13 16:27:23 +03:00
Mikhail Zarechenskiy 85d442133d Load compiler language version settings for foreign annotations tests
To set specific features for compiler tests
2017-11-13 16:27:22 +03:00
Mikhail Zarechenskiy 63b13027df Configure pseudocode tests with !LANGUAGE directive
Except all, it's also useful to use one class of language version settings for compiler tests to configure it specially for tests
2017-11-13 16:27:20 +03:00
Mikhail Zarechenskiy ef1d1ef946 Enable new inference feature by system property for tests only 2017-11-13 16:27:19 +03:00
Mikhail Zarechenskiy fbbe396881 Add configuration key to enable new inference for compiler tests 2017-11-13 16:27:18 +03:00
Mikhail Zarechenskiy 0b484771dd Add compiler key to enable new inference 2017-11-13 16:24:34 +03:00
Mikhail Zarechenskiy 84ac5a3e22 Use separate directive to check results of descriptor renderer for NI 2017-11-13 16:24:33 +03:00
Mikhail Zarechenskiy b6542caf47 Setup system property for NI tests with parameter -PnewInferenceTests 2017-11-13 16:23:05 +03:00
Mikhail Zarechenskiy 0410287cf9 Add flag to force loading old inference diagnostics 2017-11-13 16:23:05 +03:00
Mikhail Zarechenskiy 6486c8dccc Add ability to reuse one diagnostic test file for old and new inference 2017-11-13 16:23:05 +03:00
Mikhail Zarechenskiy 73b4e24d54 Introduce language feature for NI, remove old setting 2017-11-13 16:23:04 +03:00
Toshiaki Kameyama 27e7f13335 Fix AssertionError on completing after template in string literal
#KT-16402 Fixed
2017-11-13 16:01:34 +03:00
Simon Ogorodnik 0560ba7929 KT-19943: Remove redundant type conversions in J2kPostProcessing
Don't remove them in converter itself
2017-11-13 15:54:33 +03:00
a2kaido 083c3d8a5d KT-19943: Remove redundant special type unboxing calls in J2K
#KT-19943 Fixed
2017-11-13 15:54:33 +03:00
Konstantin Bulenkov 65cc5f1589 Change run icon in gutter to standard one from IJ Platform 2017-11-13 13:16:22 +01:00
Alexander Udalov 6f276c623b Do not use IntelliJ extensions for uninitialized variable suppressor in JS 2017-11-13 13:04:54 +01:00
Alexander Udalov 6f90a0545c Do not use IntelliJ extensions for declaration without body suppressor in JS 2017-11-13 13:04:54 +01:00
Alexander Udalov 7f81601123 Do not use IntelliJ extensions for unused parameter suppressor in JS 2017-11-13 13:04:54 +01:00
Alexander Udalov d782c8a644 Use ServiceLoader instead of IntelliJ extensions for ScriptHelper 2017-11-13 13:04:54 +01:00
Alexander Udalov 20d13411e0 Remove obsolete extension point implementations
- There's no class with FQ name
  org.jetbrains.kotlin.resolve.jvm.AnalyzeCompleteHandlerExtension anymore
- There's no substring classBuilderInterceptorExtension anywhere else in
  the project
2017-11-13 13:04:54 +01:00
Toshiaki Kameyama 2be27d5380 KT-19390: Fix char + String in Java is converted to code with multiple type errors in Kotlin (#1235)
#KT-19390 Fixed
2017-11-13 14:13:34 +03:00
Mikhail Glukhikh 1e940bde01 Lookup element factory: do not use outdated descriptor
Probably #KT-20986 Fixed
2017-11-13 14:10:58 +03:00
Mikhail Glukhikh f43360177a Minor refactoring of ResolveElementCache #KT-21132 Fixed
Get rid of SoftValueMap.containsKey
2017-11-13 14:10:58 +03:00
Ilya Gorbunov f51974b271 Minor fix in comparison samples #KT-20357 2017-11-10 23:32:20 +03:00
scache 96e322c7d5 Add samples for Comparisons #KT-20357 2017-11-10 23:32:06 +03:00
Ilya Gorbunov e16a0ba650 Improve and group samples for operations on Iterables #KT-20357 2017-11-10 23:31:50 +03:00
kenji tomita 75348dd0c0 Add samples for Iterables #KT-20357 2017-11-10 23:31:31 +03:00
Alexey Belkov 5da1b4c566 Minor: fix sample name (KT-20357) 2017-11-10 23:29:39 +03:00
Alexander Udalov 2572d27921 Regenerate tests 2017-11-10 20:01:48 +01:00
Alexander Udalov b5fa520aa5 Remove obsolete version override mechanism and increment-version.kts 2017-11-10 18:58:32 +01:00
Alexander Udalov 36026d3f16 Minor, remove obsolete jdkPath 2017-11-10 18:58:32 +01:00
Alexander Udalov 208e68a968 Move strip-kotlin-annotations script to buildSrc
... and invoke it directly in kotlin-reflect's build file, instead of
running another instance of compiler to evaluate a script. Also only
strip kotlin.Metadata, since it's the only annotation with heavy
metadata on Kotlin-generated class files
2017-11-10 18:58:32 +01:00
Alexander Udalov 38bee07fd0 Remove obsolete protobuf-lite building scripts
This logic is now present in
custom-dependencies/protobuf-lite/build.gradle
2017-11-10 18:58:31 +01:00
Alexander Udalov d26486b7df Move JvmRuntimeDescriptorLoaderTest to core/descriptors.runtime/tests
This allows to get rid of the dependency on descriptors.runtime from
compiler/IDE tests which is problematic: classes there clash with the
classes in kotlin-reflect, which reference declarations in shadowed
packages
2017-11-10 18:58:31 +01:00
Alexander Udalov 02981038f3 Split core into descriptors, descriptors.jvm, deserialization, descriptors.runtime 2017-11-10 18:58:31 +01:00
Alexander Udalov 328e906b57 Rename source set "descriptor.loader.java" -> "descriptors.jvm"
The new name is more convenient and precise because this module is no
longer only about loading declarations from Java, it also contains
implementation of loading Kotlin declarations from .class files, as well
as type mapping abstractions, JVM ABI specifications, etc.
2017-11-10 18:58:31 +01:00
Alexander Udalov 51e00eb05e Move descriptors.runtime sources to package kotlin.reflect.jvm.internal
To make it obvious that this is a part of kotlin-reflect and should not
be packed into the compiler jar. Also copy 'classId' utility to
AbstractLocalClassProtoTest to minimize dependencies on
kotlin.reflect.jvm.internal

Note that the module itself is still needed and can't be merged into
kotlin-reflect because of the way it's used in
AbstractJvmRuntimeDescriptorLoaderTest
2017-11-10 18:58:31 +01:00
Alexander Udalov 4cb8a3a6b7 Remove obsolete workaround for jansi clash issue
This was needed to workaround KT-17031 which is now fixed
2017-11-10 18:58:31 +01:00
Alexander Udalov c519e33a25 Remove ultimate/.idea
kotlin-ultimate is no longer used as a separate project since it's
merged into the main Gradle project
2017-11-10 18:58:31 +01:00
Alexander Udalov 1c2fee8764 Remove obsolete non-compiler-tests.iml 2017-11-10 18:58:31 +01:00
Alexander Udalov 81756150dd Update .idea/codeStyles/Project.xml for latest IDEA 2017-11-10 18:08:10 +01:00
Ilmir Usmanov 0f9a21d429 Add regression test for KT-17640 2017-11-10 19:16:06 +03:00
Mikhael Bogdanov ad80d1239f Properly process special names for local function in LocalLookup 2017-11-10 13:42:40 +01:00
Mikhael Bogdanov 5250d947e7 Update android emulator images 2017-11-10 13:42:40 +01:00
Toshiaki Kameyama b8c5d1b852 Fix "add <*>" quick-fix for inner class with generic outer one
So #KT-20763 Fixed
2017-11-10 15:34:17 +03:00