Commit Graph

542 Commits

Author SHA1 Message Date
Dmitry Petrov 8077289242 Update testData after changes in diagnostics
Original commit: c83b764c73
2017-05-26 13:58:46 +03:00
Dmitry Petrov cb8ab93160 Update testData for changed diagnostic messages
Original commit: 7979663e6c
2017-05-26 13:58:46 +03:00
Alexander Udalov 7231c777c1 Fix compilation against JRE 9 on JPS
Write the modular JDK (9+) path to the module.xml file passed to the
compiler from the JPS plugin. This path is then recorded in the compiler
configuration in KotlinToJVMBytecodeCompiler.configureSourceRoots. This
is needed because in JPS plugin, we pass "-no-jdk" and thus no JDK home
path was recorded in the compiler configuration in
K2JVMCompiler.setupJdkClasspathRoots. Presence of JDK home path in the
configuration is crucial for JDK 9 support (see
KotlinCoreEnvironment.Companion.createApplicationEnvironment), because
classes there can only be loaded with the special "jrt" file system, not
as .class files in .jar files

 #KT-17801 Fixed

Original commit: 965b4199f4
2017-05-24 15:46:57 +03:00
Valentin Kipyatkov 0fbb7719c5 Fixed error message to quote parameter name
Original commit: 1fe6886a33
2017-05-20 23:44:20 +03:00
Dmitry Petrov 8f05bad893 Fix incremental compilation problems related to type alias constructors
1. Determine source element for descriptors with NO_SOURCE recursively.

2. Always provide type abbreviation for type alias constructor
return type.

 #KT-15495 Fixed

Original commit: a2db4dc0d5
2017-05-18 10:55:16 +03:00
Dmitry Petrov ab26de17eb Update test for incremental compilation after new DCE
Previous test had an inline setter that didn't produce any effect,
thus, corresponding code was removed by new DCE.
Make sure that changes made in the inline property are caught up by IC.

Original commit: 8903504334
2017-05-16 17:28:43 +03:00
Anton Bannykh 48328f7989 JS: support internal visibility from friend modules
Friend modules should be provided using the -Xfriend-modules flag
in the same format as -libraries. No manual configuration required for
JPS, Gradle and Maven plugins.

Friend modules could be switched off using the -Xfriend-modules-disabled
flag. Doing that will
  * prevent internal declarations from being exported,
  * values provided by -Xfriend-modules ignored,
  * raise a compilation error on attemps to use internal declarations from other modules

Fixes #KT-15135 and #KT-16568.

Original commit: 2e9a59819a
2017-05-04 21:44:17 +03:00
Alexey Tsvetkov ce22d1cf9b Fix internal visibility check for deserialized typealiases
#KT-15495 fixed

Original commit: 50085722d1
2017-04-25 16:27:23 +03:00
Zalim Bashorov 6bedbfb67f Add tests for KT-12199 to prevent regression
#KT-12199 Obsolete

Original commit: 712b2c8117
2017-04-11 15:46:13 +03:00
Alexander Udalov 2208b46941 Support nested classes in KotlinCliJavaFileManagerImpl.findClass
findClass(String, GlobalSearchScope) is invoked for example when we're
resolving supertypes of classes in Java libraries. Previously, it never
found nested classes and falled back to CoreJavaFileManager's
implementation, which lacks a fix for the original issue (KT-12664,
which was fixed in JvmDependenciesIndex in ff783f1f and 2c344635)

 #KT-16931 Fixed

Original commit: c67eb84369
2017-03-27 17:19:24 +03:00
Nikolay Krasko 0548ec683d ! (TODO) Update build test data in 171
Original commit: 1d29c81346
2017-03-20 18:45:40 +01:00
Alexey Tsvetkov efc1164489 JPS: implement tracking of null annotations
#KT-12933 fixed
    #KT-14266 fixed

Original commit: 05f278ce20
2017-03-20 18:45:21 +01:00
Anton Bannykh 07691e369a JPS JS: simplified the code and added tests for the missing meta.js case (e.g. empty sourceroot; fixed by yole in 00ed0248d9a23701dbef52da02259d174a9999e7)
Original commit: 6608e97d35
2017-02-28 16:05:16 +03:00
Alexey Andreev b4086fe033 JS: drop support of old library format
Original commit: 7192529733
2017-02-10 21:04:50 +03:00
Stanislav Erokhin 4cb5e8a919 Do not force resolve descriptors for explicit imports. Create lazy scope instead.
Original commit: b616ef0a40
2017-02-09 15:42:30 +03:00
Alexander Udalov d323c39b7d Do not import "kotlin.comparisons" by default for language version 1.0
#KT-16199 Fixed

Original commit: b780e6d374
2017-02-07 10:15:57 +03:00
Anton Bannykh 81ab76ade8 JPS: fixed duplicate meta.js in case of multiple source roots in the same module.
Original commit: f0e3c87b84
2017-02-03 13:03:12 +03:00
Anton Bannykh 36035c789a JS: fixed support for test source roots (KT-6627)
Original commit: 289a7a9cc3
2017-02-03 13:03:12 +03:00
Denis Zharkov 78391cd97c Move coroutine-related runtime parts to kotlin.coroutines.experimental package
#KT-15975 Fixed

Original commit: 8fa8ba7055
2017-01-27 23:24:13 +03:00
Alexey Tsvetkov 9f8ba45853 Rebuild all kotlin files when EAP flag is changed
Original commit: b9dbe69232
2017-01-26 13:38:52 +03:00
Alexey Tsvetkov 84691965cb Save JvmBuildMetaInfo to file after build
Original commit: 4a63e47aa0
2017-01-26 13:38:52 +03:00
Ilya Gorbunov 40e1c2cdce Add kotlin.comparisons package to default imports.
Original commit: 3ec48ab244
2017-01-19 18:21:14 +03:00
Zalim Bashorov 86d3366b8c KJS: move println to kotlin.io; import kotlin.io by default in Default platform
Original commit: 6ea6e4ab98
2017-01-18 14:25:36 +03:00
Denis Zharkov 411745f260 Write kotlin metadata on class-files for coroutine state machines
Otherwise it breaks JPS assumptions, that leads to exceptions like:
Error:Kotlin: [Internal Error] java.lang.AssertionError: Couldn't load KotlinClass from /Users/jetbrains/IdeaProjects/KotlinPlaygroundBeta11/out/production/KotlinPlaygroundBeta11/Counter$both$1.class; it may happen because class doesn't have valid Kotlin annotations
    at org.jetbrains.kotlin.build.GeneratedJvmClass.<init>(generatedFiles.kt:36)
    at org.jetbrains.kotlin.jps.build.KotlinBuilder.getGeneratedFiles(KotlinBuilder.kt:469)
    at org.jetbrains.kotlin.jps.build.KotlinBuilder.doBuild(KotlinBuilder.kt:241)
    at org.jetbrains.kotlin.jps.build.KotlinBuilder.build(KotlinBuilder.kt:140)
...

Original commit: 9f217de10b
2017-01-16 17:53:15 +03:00
Denis Zharkov f2be1f776d Minor. Fix tests after CoroutineContext introduction
Original commit: c7f76d7ec8
2017-01-14 15:13:36 +03:00
Denis Zharkov 0088c2e646 Move coroutine intrinsics to kotlin.coroutine.intrinsics package
Also rename val SUSPENDED to SUSPENDED_MARKER

 #KT-15698 Fixed

Original commit: 2cb9d3a8ad
2017-01-14 13:24:53 +03:00
Stanislav Erokhin a4eb3ccd9d Fixed testdata.
Original commit: d7566d84d0
2016-12-16 02:01:12 +03:00
Stanislav Erokhin 45c849b8ca Global rename in test data for coroutines
(cherry picked from commit 132f97b)

Original commit: b527a4d158
2016-12-15 23:58:26 +03:00
Stanislav Erokhin dc4493a544 Update test data for LookupTracker (removed package kotlin.coroutines from default imports)
Original commit: 509a504318
2016-12-15 23:57:54 +03:00
Stanislav Erokhin e5a6d21783 Remove propertyDelegate and fix unused parameter checker for provideDelegate.
Original commit: dbe8edda5f
2016-12-12 23:14:09 +03:00
Stanislav Erokhin 28192d0a02 Rename toDelegateFor to provideDelegate.
Original commit: 9dc9fb578f
2016-12-12 23:14:07 +03:00
Stanislav Erokhin 89c17e9162 Minor. Update Lookup test data.
Original commit: db5250a614
2016-12-12 23:14:06 +03:00
Denis Zharkov 5d60a8526f Support new suspend convention in JVM backend partially
Stack-unwinding does not work yet

 #KT-14924 In Progress

Original commit: 1f98accad2
2016-11-29 14:14:50 +03:00
Alexey Tsvetkov 0c205c38b9 Minor: fix test data
dummy.kt was added for Gradle test (it does not start otherwise).
Old IC recompiles this file, so new and old IC logs are different.

Original commit: 5eaa23ec60
2016-11-22 23:31:39 +03:00
Dmitry Petrov 48b0259d9b Report error on non-top-level type aliases (unsupported in 1.1).
Get rid of nested type aliases in project.

Original commit: 4c47d77a9f
2016-11-21 10:25:51 +03:00
Alexey Tsvetkov 9185cd4537 Gradle IC: treat companion object change as class signature change
Original commit: fc1af746c6
2016-10-28 17:58:10 +03:00
Alexey Tsvetkov 56a067cb1c Gradle IC: fix converting class to package facade
Original commit: f01a956a8b
2016-10-28 17:58:10 +03:00
Alexey Tsvetkov c86d06ae4f Gradle IC: support multifile classes
Original commit: 151cf7d073
2016-10-28 17:58:10 +03:00
Alexander Udalov 40e9bfffe6 Import classes from kotlin.coroutines by default, add to default imports in JS
Original commit: 6b6ddf5f75
2016-10-24 15:30:38 +03:00
Alexander Udalov 49750cee02 Extract platform-independent default imports to TargetPlatform.Default.defaultImports
This is needed because SourceNavigationHelper uses default platform and it
needs default imports to be able to resolve references (otherwise
NavigateToLibrarySourceTestGenerated breaks)

Original commit: 56e2173b3c
2016-10-21 17:10:39 +03:00
Alexander Udalov be828cd3cf Fix incremental recompilation of JvmMultifileClass with top level function
See 7a679eb and previous changes where this behavior was broken (this was
untested, however). Fixes EA-90065

Original commit: 7b2a80ffa4
2016-10-19 12:50:10 +03:00
Michael Bogdanov 1b59000669 Test data fix
Original commit: c5e8139236
2016-10-18 15:26:24 +03:00
Michael Bogdanov c5d50ce6d7 Fix for KT-14012: Back-end (JVM) Internal error every first compilation after the source code change
#KT-14012 Fixed

Original commit: d48ef2efc7
2016-10-18 10:46:51 +03:00
Dmitry Petrov d324df7f20 KT-13961 REDECLARATION not reported on private-in-file 'foo' vs public 'foo' in different file
Private-in-file declarations conflict with public overload-equivalent declarations
in other files in the same package.

Move functions for grouping possible redeclarations to OverloadResolver
(since they are used only there).

Refactor redeclarations / conflicting overloads reporting.

Original commit: 06101dba52
2016-10-03 11:50:29 +03:00
Alexander Udalov 866ea672d7 Allow data classes to implement equals/hashCode/toString from base classes
#KT-11306 Fixed

Original commit: fea116f14e
2016-09-15 16:45:48 +03:00
Stanislav Erokhin df295ddfc4 Set reference target and report custom error instead unresolved reference for cases: interface, generic parameter, object + invoke, class without companion.
#KT-2787 Fixed.

Original commit: bebc75c8ef
2016-09-01 18:01:55 +03:00
Alexander Udalov c22ccf58c0 Remove quotes around visibility in invisible member diagnostic
Original commit: 83000c50ff
2016-07-22 18:13:41 +03:00
Alexander Udalov b3a54cff83 Improve error message for inaccessible invisible_fake members
#KT-8989 Fixed

Original commit: b6b2303aa7
2016-07-22 18:13:40 +03:00
Alexander Udalov b6b3454e26 Do not consider fake variables for objects in :: resolution
The main change is in
NewResolutionOldInference.ResolutionKind.CallableReference, where
createVariableProcessor creates a processor which no longer lists objects

 #KT-12322 Fixed

Original commit: b44f060ffa
2016-07-04 15:42:35 +03:00
Michael Bogdanov d525cd1581 Fix for KT-11964: No TABLESWITCH in when on enum bytecode if enum constant is imported
#KT-11964 Fixed

Original commit: 3b419e8ba3
2016-06-29 09:32:45 +03:00