JS: when checking calls to JsModule declarations, check arguments passed to reified type parameters. See KT-15253

This commit is contained in:
Alexey Andreev
2017-01-23 19:19:11 +03:00
parent 4c7a07bed6
commit 9000d54d8a
8 changed files with 47 additions and 10 deletions
@@ -34,6 +34,14 @@ fun box() {
<!CALL_TO_JS_NON_MODULE_WITH_MODULE_SYSTEM!>B<!>()
<!CALL_TO_JS_NON_MODULE_WITH_MODULE_SYSTEM!>bar<!>()
B.<!CALL_TO_JS_NON_MODULE_WITH_MODULE_SYSTEM!>Nested<!>()
boo<<!CALL_TO_JS_NON_MODULE_WITH_MODULE_SYSTEM!>B?<!>>(null)
<!CALL_TO_JS_NON_MODULE_WITH_MODULE_SYSTEM!>boo<!>(null as B?)
boo<<!CALL_TO_JS_NON_MODULE_WITH_MODULE_SYSTEM!>B.Nested?<!>>(null)
}
external class DerivedB : <!CALL_TO_JS_NON_MODULE_WITH_MODULE_SYSTEM!>B<!>
external class DerivedB : <!CALL_TO_JS_NON_MODULE_WITH_MODULE_SYSTEM!>B<!>
inline fun <reified T> boo(x: T) {
println("${T::class.simpleName}: $x")
}