Svetlana Isakova
bda5bab057
Captured type might be substituted in an opposite projection
...
out Captured (in Int) = out Int
in Captured (out Int) = in Int
2014-12-16 14:41:56 +03:00
Alexey Sedunov
bbf951ff03
Move: Fix reference binding for the case of default target package
...
#KT-6457 Fixed
2014-12-15 20:43:00 +03:00
Nikolay Krasko
da6e1890bd
Don't lookahead too far when looking for '.' between type and parameters and for comma in function literal parameters
2014-12-15 20:20:09 +03:00
Nikolay Krasko
421bb57f50
Fix parser performance: don't do the additional lookahead when looking for the comma in parameters
2014-12-15 20:20:08 +03:00
Nikolay Krasko
ba849b5940
Minor: get string with parser context during debug
2014-12-15 20:20:08 +03:00
Nikolay Krasko
4fa97c917d
Warn if lookahead is too big in matchTokenStreamPredicate()
2014-12-15 20:20:07 +03:00
Evgeny Gerashchenko
6c15472bf9
Minor. Regenerated test.
2014-12-15 19:38:11 +03:00
Alexey Tsvetkov
669cbb203b
Reload rendrer when application changes (for tests)
2014-12-15 19:16:22 +03:00
Alexey Tsvetkov
46326fe5ac
JS backend: report backend diagnostics
2014-12-15 19:16:21 +03:00
Alexey Tsvetkov
3658698f4f
JS backend: pass diagnostics to TranslationContext using config
2014-12-15 19:16:20 +03:00
Alexey Tsvetkov
c3f67c54bd
JS backend: added jsCode test cases
2014-12-15 19:16:20 +03:00
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
Alexey Sedunov
3760eed8ff
Runner: Support classes and objects with [platformStatic] main()
...
#KT-6072 Fixed
2014-12-15 15:02:44 +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
c097e6ee3e
After approximation interpret Contr<*> as Contr<Nothing>
...
not Contr<out Any?>
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
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
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
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
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
f8f7ea8998
JS backend: check libraries in cli compiler before translation
2014-12-12 03:04:17 +03:00
Michael Nedzelsky
44e7af7f65
K2JS: get rid of MetaInfServices
2014-12-12 03:03:37 +03:00
Michael Nedzelsky
a026f6d25e
add LibraryUtils.copyJsFilesFromLibraries
2014-12-12 03:03:32 +03:00
Michael Nedzelsky
729e7084fa
new ant test for kotlin javascript library support
2014-12-12 03:03:29 +03:00
Michael Nedzelsky
ecc0751221
K2JS: add cli compiler tests for libraries
2014-12-12 03:03:27 +03:00
Michael Nedzelsky
103307432e
update kotlin javascript stdlib if needed
2014-12-12 03:03:24 +03:00
Michael Nedzelsky
85a38e17de
reuse for KotlinJS library common Library dialogs
...
remove unnecessary code for kotlin js library support
JS backend: simplify check isConfigured for kotlin js module
2014-12-12 03:03:22 +03:00
Michael Nedzelsky
61e9cbec66
K2JS: get kotlin js module name from Kotlin-JS-Module-Name attribute in manifest
2014-12-12 03:03:13 +03:00
Michael Nedzelsky
83ec20508a
JS backend: isJsRuntimeLibrary -> isKotlinJavascriptStdLibrary
2014-12-12 03:03:11 +03:00
Michael Nedzelsky
34411dcf01
JS backend: add Specification-Title to manifest and LibraryUtils.isKotlinJavascriptLibrary
2014-12-12 03:03:03 +03:00
Michael Nedzelsky
12ff5de013
K2JS: fix KT-5639 Exception in kotlin-js when directory is given instead of output file
...
#KT-5639 Fixed
2014-12-12 01:25:15 +03:00
Alexander Udalov
d71220f8b1
Drop ArrayGenTest, move test case to generated
2014-12-11 16:04:04 +03:00
Denis Zharkov
c6d6aebd2f
Added tests for stdlib Array constructors
2014-12-11 16:04:04 +03:00
Denis Zharkov
fe9599d588
Removed codegen of Array-constructor with lambda
2014-12-11 16:04:04 +03:00
Denis Zharkov
d345ba05dd
Added inline function "Array" into stdlib
...
It has the same signature and semantics as Array constructor had
Also made Array constructor private and accepting no arguments
2014-12-11 16:04:03 +03:00
Denis Zharkov
654411a0b0
Refactored tests using Array constructor:
...
Some moved to tests with stdlib
Some changed to use arrayOfNulls
2014-12-11 16:04:03 +03:00
Denis Zharkov
abbcf61183
JVM Backend: always inline callable containing reified TP
2014-12-11 16:04:02 +03:00