Commit Graph

20867 Commits

Author SHA1 Message Date
Nicolay Mitropolsky 60fe6a911f as31: KotlinTestUtils: resolving PathUtil conflict 2018-04-11 16:28:22 +03:00
Ilya Gorbunov f22093ee7b as31: Comment out some new code in ClasspathRootsResolver
Relates to disabled modular JDK9 support.
2018-04-11 16:28:18 +03:00
Alexey Sedunov a9cdccc6de as31: Misc: Fix compilation 2018-04-11 16:28:18 +03:00
Mikhael Bogdanov 554b834f2c as31: Revert "Fix codegen tests on JDK 9 with jdkKind = FULL_JDK" 2018-04-11 16:28:17 +03:00
Yan Zhulanow 72e66f6175 as31: Disable Maven and JPS modules which is not available in AS 2018-04-11 16:28:13 +03:00
Mikhael Bogdanov b785aca98e 172: Fix compilation 2018-04-11 16:28:12 +03:00
Vyacheslav Gerasimov 8d3f71a04f 172: Revert "Quick Fixes: Support cross-language "Create from Usage" with Kotlin target"
This reverts commit 908bf71
2018-04-11 16:28:09 +03:00
Nikolay Krasko 368dd193ac 172: Revert "Fix compilation after moving to idea 173"
This reverts commit fe121cc6aeadf63ca2c2819c9c7df59cc81caf5d.
2018-04-11 16:28:02 +03:00
Nikolay Krasko fbed7f9c08 172: Restore compilation against Idea 172
Revert "Fix proguard settings for 173"
4dadae2e9c8419bfda9d77f56797e68edbd8ecd7.

Revert "Fix compilation in 173"
0633aa925c8e862519ae699e5e3fe81a2bd227c2.

Revert "Fix compilation (MockParameterInfoUIContext.java)"
01a7fbfb60d786c56c54f4fd77d9f1233f599ede.

Revert "Fix compilation"
043a5dac796f6bf92bbe6c9573c1af07fadcfe4e.

Revert "Fix compatibility with BuildScriptDataBuilder API changes"
c7df054d0e90a86fbe67f23802e9be49b2117ded.
2018-04-11 16:28:02 +03:00
Nikolay Krasko 3b434eeb13 172: Restore KotlinCoreEnvironment for 172 branch
Revert "`KotlinCoreEnvironment`: set `ideaCompatibleBuildNumber = "173.1"`"
This reverts commit d3321cc77a6b55d8b8ff3c3a16473f2f3b378533.

Revert "`JvmFacade`-related tests repair"
This reverts commit faeacdd17d37a4d733b686f3a1d5e8fc6ea54d79.

Revert "Register new service and EPs added in 173"
This reverts commit 5d227c0e714c1b4316e7b8daca1f208ee423f448.
2018-04-11 16:28:02 +03:00
Nikolay Krasko e090775974 172: Revert "KtLightAbstractAnnotation build fix for 173 (#1283)"
This reverts commit b401cc19e07ad632d61ca0d402dc6017f9559d18.
2018-04-11 16:28:02 +03:00
Nikolay Krasko d6cc3d64fe 172: Revert "EdtTestUtil.runInEdtAndWait fix for proper user action emulation"
This reverts commit 4ebe750d36e86545a72177f91dc3baaa235fa92d.
2018-04-11 16:28:00 +03:00
Nikolay Krasko 81a2e2a340 172: Revert "Fixing non-running tests, that used MockApplication environment"
This reverts commit 49fb7aab2a67f09c2832d759448ad07c1bb3023a.
2018-04-11 16:27:57 +03:00
Nikolay Krasko 99acec0970 172: [Tests] Revert "Allow different diagnostics in Javac tests - workaround for IDEA-184289"
This reverts commit 5212153463dcefbde28b4ca1814f6888fa9c57c1.
2018-04-11 16:27:56 +03:00
Dmitry Petrov 7cf6c70fbf Use NoScopeRecordCliBindingTrace as default trace in GenerationUtils
NB we use 'Intrinsics.areEqual(Double, Double)' and
'Intrinsics.areEqual(Float, Float)', because right now we take
nullability from the inferred type of the expression (which is 'Any?' in
the test cases).
We should probably reconsider this in case of more exact information
available from the data flow analysis, e.g., in case of

  fun test(x: Any?) =
    x is Serializable && x is Double? && x == 0.0

We statically know that 'x' is not null in 'x == 0.0' (although it's
neither nullability of it's numeric type 'Double?' nor the nullability
of the inferred type 'Any?').

There might be some edge effects in the performance related to byte code
size and preventive unboxing and so on.
2018-04-11 10:49:02 +03:00
Dmitry Petrov 665d6c82ad Fix Android tests for IEEE 754 2018-04-11 10:49:02 +03:00
Ilmir Usmanov 2cfe387bab Move coroutines to kotlin.coroutines package: compiler
Generate continuation type as kotlin.coroutines.Continuaion. This code will
fail at runtime since there is no stdlib backing this change yet.
However, in order to generate compatible stdlib we need a compiler, which
generates continuation type as kotlin.coroutines.Continuation.
Thus, firstly we support the change in the compiler, make it bootstrap
compiler and only then change stdlib and tests accordingly.
 #KT-23362
2018-04-10 22:51:46 +03:00
Anton Bannykh f8c0c54a66 Revert "Clean up test skips after KT-17137"
This reverts commit 715d5e9
2018-04-10 20:45:07 +03:00
Anton Bannykh 703611a15c Revert "JS: remove -XtypedArraysEnabled flag (always true now)"
This reverts commit 4a5e9bb
2018-04-10 20:45:07 +03:00
Mikhael Bogdanov 56d1184515 Restrict conditions for @JvmDefault super calls
Condition was too strict
  if @JvmDefault implicitly hidden by class in inheritance.
  Diagnostic is redundant cause there isn't breaking
  change depending on interface method generation strategy and
  delegating stub generation in inheriting class.
2018-04-10 16:33:26 +02:00
Mikhael Bogdanov e23c406285 Minor. Avoid recursion 2018-04-10 16:33:25 +02:00
Mikhael Bogdanov 6d1af263ba Restrict conditions for @JvmDefault super calls
Condition was too strict if we actually make super call
  through super class. Diagnostic is redundant cause there isn't breaking
  change depending on interface method generation strategy.
2018-04-10 16:33:25 +02:00
Dmitry Savvinov 2d8e4e752c Fallback to Any type in case supertypes are empty
This can happen e.g. if all supertypes were on the cycle (A : B, B : A)
-- then SupertypesLoopChecker will cut all supertypes that are on cycle,
leaving set of supertypes empty.

Some clients in the compiler are not ready to work with empty list of
supertypes -- notably, CommonSupertypes.

^KT-23029 Fixed
2018-04-10 17:25:43 +03:00
Ilmir Usmanov eb3b9032d6 Add synthetic flag to generated private suspend functions
Private suspend functions need to be generated as package-local, since
they are called from their continuations.
However, this means that they can be called from Java, which breaks
their private visibility.
Adding synthetic to them fixes the issue.
 #KT-17584: Fixed
2018-04-10 17:25:12 +03:00
Natalia Selezneva a487543827 Fix Repl System.in wrapper. Do not exit after readline in user code
^KT-23622 Fixed
2018-04-10 16:14:23 +03:00
Roman Artemev 3bc323807f Fix function lookup in modules with similar names [KT-23582] 2018-04-10 15:58:30 +03:00
Roman Artemev 4cdd121c21 Add test for issue KT-23582 2018-04-10 15:58:30 +03:00
Roman Artemev 2bea8816a6 Add Secondary constructor lowering 2018-04-10 15:45:55 +03:00
Roman Artemev 3ce324fa9d Add tests for secondary constructors 2018-04-10 15:45:55 +03:00
Denis Zharkov 42d9c5b932 Remove dependency on :kotlin-test:kotlin-test-jvm from tests-common
#KT-20897 Fixed
2018-04-10 15:38:16 +03:00
Dmitry Savvinov 8d2f806c6b Minor: extract rendering of type variable into a method 2018-04-10 10:47:22 +03:00
Dmitry Savvinov e450da8b63 Introduce EXTRA_VERBOSE mode for rendring ConstraintSystem
Use it for 'missing upperBoundViolatedError' debug message
2018-04-10 10:47:22 +03:00
Dmitry Savvinov 00c55c4f55 Minor: extract rendering of type bound into method 2018-04-10 10:47:22 +03:00
Dmitry Savvinov 30948269dd Minor: use enum for determining verbosity of ConstraintSystem render 2018-04-10 10:47:22 +03:00
Dmitry Savvinov d8b7de4f0e Add extra diagnostic information when no common supertypes are found
We're suspecting that the culprit of such errors is race condition on
'supertypes' in AbstractTypeConstructor, when it is created using
'LockBasedStorageManager.NO_LOCKS'
2018-04-10 10:47:22 +03:00
Yan Zhulanow 95684b9ecb Minor: Fix codegen tests for smap 2018-04-09 19:45:49 +03:00
Mikhael Bogdanov f1b8a8f913 Fix test data 2018-04-09 18:13:37 +02:00
Mikhael Bogdanov c5d4f22e4f Add quick fix for adding @JvmDefault annotation 2018-04-09 18:13:36 +02:00
Mikhael Bogdanov 31e459d9c0 Fix misspelling in test data 2018-04-09 18:13:35 +02:00
Mikhael Bogdanov d788b3b6f9 Add warning on overriding java default by non @JvmDefault method 2018-04-09 18:13:35 +02:00
Mikhael Bogdanov cb9c1ae104 Support default method super calls within @JvmDefault ones 2018-04-09 18:13:34 +02:00
Mikhael Bogdanov 942dd8a67c Properly calculate this for super call 2018-04-09 18:13:34 +02:00
Mikaël Peltier 0a11385006 KT-12330 Improve bytecode for data class equals/hashCode methods
- Do not longer call hashCode on java/lang/Object but do this
on statically checked type.
- Do not longer call Intrinsics.areEqual but use directly
equals method on statically checked type.

Fix of https://youtrack.jetbrains.com/issue/KT-12330
2018-04-09 14:16:02 +02:00
Dmitry Petrov e6baf0296d More annotation generation for declarations with test cases 2018-04-09 11:24:37 +03:00
Dmitry Petrov fdd8b7ae6c Annotations in IR are represented as call expressions (nothing else) 2018-04-09 11:24:37 +03:00
Dmitry Petrov 57077a5eb8 Generate annotations for declarations in psi2ir 2018-04-09 11:24:37 +03:00
Dmitry Petrov c2dced775d IrDeclaration has annotations
Note that acceptChildren doesn't traverse them (yet?).
2018-04-09 11:24:37 +03:00
Dmitry Petrov 4016254fd4 Generate constructors with empty bodies for annotation classes
Default parameter values of primary constructor of an annotation class
are required to generate default values of annotation properties.
2018-04-09 11:24:37 +03:00
Dmitry Petrov e74c448c0a Minor: reformat code 2018-04-09 11:24:37 +03:00
Ilmir Usmanov bd0ad26dcf Support local suspend functions
Treat them like lambdas. This means:
1) Like local suspend lambdas, which become "non-suspend" after creating
jvmSuspendView, they do this as well
2) They both are generated with the same codegen.
3) They are treated differently only on front-end side.
 #KT-20364: Fixed
2018-04-06 19:11:19 +03:00