Commit Graph

19269 Commits

Author SHA1 Message Date
Zalim Bashorov a6597e8926 Frontend: allow omit types in lambda parameters of dynamic call when lambda declareted inside parentheses. 2014-12-15 18:22:15 +03:00
Zalim Bashorov 59c4f55988 Frontend: allow to use the spread operator in dynamic calls. 2014-12-15 18:18:38 +03:00
Zalim Bashorov 4ac3cbc384 Frontend: allow omit types in lambda parameters of dynamic calls. 2014-12-15 18:12:53 +03:00
Zalim Bashorov 4dff9cf5fc Frontend: fixed explicit receiver kind for dynamic call with implicit dispatch receiver.
Additionally added tests for other cases.
2014-12-15 18:12:04 +03:00
Evgeny Gerashchenko 8de11e4664 Added test checking that we don't create Kotlin incremental caches for targets without Kotlin. 2014-12-15 16:46:27 +03:00
nik 07a1ba0ef6 Kotlin builder: avoid initialization of incremental caches in 'close' method (KT-6409) 2014-12-15 16:44:13 +03:00
Michael Nedzelsky f1d89805f1 fix kotlin-gradle-plugin-test build 2014-12-15 15:58:51 +03:00
Alexey Sedunov 3760eed8ff Runner: Support classes and objects with [platformStatic] main()
#KT-6072 Fixed
2014-12-15 15:02:44 +03:00
Alexey Sedunov 4ecd3726b3 Create parameter from usage: Support named arguments 2014-12-14 19:32:48 +03:00
Svetlana Isakova 9a5c293b6d Fixed NameSuggester tests 2014-12-12 23:08:30 +03:00
Svetlana Isakova cddaf89ee8 Simplified NameSuggester; added test 2014-12-12 23:08:30 +03:00
Svetlana Isakova a589323eaf Rename: TypeCheckerTypingConstraints -> TypeCheckerProcedureCallbacks 2014-12-12 23:08:29 +03:00
Svetlana Isakova 239b9a96a0 Temporary hack to compile 'kotlin' 2014-12-12 23:08:29 +03:00
Svetlana Isakova 1f6f607f40 Type variable with non-trivial upper bound cannot capture 'in' projection 2014-12-12 23:08:29 +03:00
Svetlana Isakova 8b0707b15d Throw error for conflict in variances to combine 2014-12-12 23:08:29 +03:00
Svetlana Isakova c097e6ee3e After approximation interpret Contr<*> as Contr<Nothing>
not Contr<out Any?>
2014-12-12 23:08:29 +03:00
Svetlana Isakova 14a53a105b Fixed 'subtype' for captured type 2014-12-12 23:08:29 +03:00
Svetlana Isakova 0149e8048c Capture notnullable type if type variable is nullable 2014-12-12 23:08:29 +03:00
Svetlana Isakova da8fdbd23e More tests for varargs updated 2014-12-12 23:08:28 +03:00
Svetlana Isakova 7a5124215a Updated test data for Array<out T> vararg type 2014-12-12 23:08:28 +03:00
Svetlana Isakova 5b4f10e698 Made vararg parameters have Array<out T> type
instead of simply Array<T>
  #KT-1638 Fixed
  #KT-2163 Fixed
  #KT-3213 Fixed
  #KT-4172 Fixed
  #KT-5534 Fixed
2014-12-12 23:08:28 +03:00
Svetlana Isakova d893e8283e Small refactoring 2014-12-12 23:08:28 +03:00
Svetlana Isakova a3e949674f Preserve nullability while substituting captured types 2014-12-12 23:08:28 +03:00
Svetlana Isakova 2440c48f1c Added description of 'FILE' directive for diagnostic tests 2014-12-12 23:08:28 +03:00
Svetlana Isakova 070dba69fa Don't add a constraint T <: DONT_CARE from upper bounds 2014-12-12 23:08:27 +03:00
Svetlana Isakova f9d4a68c6e KT-6320 AssertionError in ConstraintSystem(The constraint shouldn't contain different type variables on both sides: Y <: X)
#KT-6320 Fixed
2014-12-12 23:08:27 +03:00
Svetlana Isakova b098220d03 Refactoring: made code in 'processDeclaredBoundConstraints' more kotlin 2014-12-12 23:08:27 +03:00
Svetlana Isakova 1fb713342b Capture types only on the top level 2014-12-12 23:08:27 +03:00
Svetlana Isakova cd359a046c Added captured types and approximation
CapturedType captures type projection while solving the constraint system.
During the substitution type containing captured types is approximated
to get rid of captured types and (for simple cases) replace them with corresponding type projections.

Note that Array<Array< CapturedType(out Int) >> is (over)approximated by Array<out<Array<out Int>>

See 'Mixed-site variance' by Ross Tate for details.

 #KT-2570 Fixed
 #KT-2872 Fixed
 #KT-3213 Fixed
2014-12-12 23:08:27 +03:00
Svetlana Isakova e798b7c6d1 Rename: MyDeclarations -> ConstraintSystemTestData
Simplified code (used 'firstOrNull')
2014-12-12 23:08:27 +03:00
Svetlana Isakova 4df8c250ab Fixes after merge
Added platform types fixes to rewritten to kotlin files
2014-12-12 23:08:26 +03:00
Svetlana Isakova 26a54aa95d Small refactoring in ConstraintSystemImpl
Extracted isMyTypeVariable, getMyTypeVariable
2014-12-12 23:08:26 +03:00
Svetlana Isakova a2fa38a7f9 Rewritten ConstraintPosition to Kotlin
Added ConstraintPositionKind
 (to be able to use enum constants from Java code)
2014-12-12 23:08:26 +03:00
Svetlana Isakova 578f6d4811 Converted ConstraintSystem to Kotlin 2014-12-12 23:08:26 +03:00
Svetlana Isakova 38d38e14c8 Changed file extension to '.kt'
to preserve file history
2014-12-12 23:08:26 +03:00
Michael Nedzelsky 801ed5245b JS backend: fix Selenium test: fail on error loading javascript files 2014-12-12 22:36:32 +03:00
Michael Nedzelsky d857d06903 fix maven kotlin-js-tests 2014-12-12 19:49:46 +03:00
Evgeny Gerashchenko 867a20e821 Merge pull request #535 from JetBrains/rr/nik
Kotlin builder: make sure that caches are lazily initialized (KT-6409)
2014-12-12 16:53:46 +04:00
nik a9d3c2c064 Kotlin builder: make sure that caches are lazily initialized (KT-6409) 2014-12-12 14:12:58 +03:00
Natalia Ukhorskaya 73d62902d0 Debugger: use partialBodyResolve. Don't compete variables defined after context element 2014-12-12 13:42:35 +03:00
Michael Nedzelsky 73a929c78d ask and optionally delete script/kotlin.js during update libraries 2014-12-12 03:05:13 +03:00
Michael Nedzelsky 492a2a1dc8 fix 'library already disposed' error while update libraries from plugin 2014-12-12 03:04:32 +03:00
Michael Nedzelsky a49bcc8d39 fix detection Kotlin Javascript stdlib 2014-12-12 03:04:29 +03:00
Michael Nedzelsky 2a680f4d8b fix name for jslib sources target in ant script 2014-12-12 03:04:26 +03:00
Michael Nedzelsky 1c9039d23b Rewrite to Kotlin: LibraryUtils 2014-12-12 03:04:24 +03:00
Michael Nedzelsky 5675da93f3 Rewrite to Kotlin: LibraryUtils. File rename 2014-12-12 03:04:22 +03:00
Michael Nedzelsky bd090d0e5f add tests for jps-plugin (Kotlin Javascript projects) 2014-12-12 03:04:19 +03:00
Michael Nedzelsky f8f7ea8998 JS backend: check libraries in cli compiler before translation 2014-12-12 03:04:17 +03:00
Michael Nedzelsky 8e052a9ade KotlinJsModuleConfigurator, KotlinJavaModuleConfigurator: refactoring 2014-12-12 03:04:15 +03:00
Michael Nedzelsky 2d1029cb29 fix: choose correct library from plugin for new Kotlin/Javascript projects 2014-12-12 03:04:12 +03:00