Diagnostics test: array creation of non-reified TP
#KT-1370 Fixed
This commit is contained in:
@@ -0,0 +1,18 @@
|
||||
// !DIAGNOSTICS: -NOTHING_TO_INLINE
|
||||
|
||||
fun <T> fail1(): Array<T> = <!TYPE_PARAMETER_AS_REIFIED!>Array<!>(1) { null!! }
|
||||
fun <T> ok1(block: () -> Array<T>): Array<T> = block()
|
||||
inline fun <reified T> ok2(): Array<T> = Array(1) { null!! }
|
||||
|
||||
|
||||
fun <T> fail2(): Array<T> = ok1 { <!TYPE_PARAMETER_AS_REIFIED!>Array<!><T>(1) { null!! } }
|
||||
fun <T> ok3(block: () -> Array<T>): Array<T> = ok1 { block() }
|
||||
inline fun <reified T> ok4(): Array<T> = ok1 { Array<T>(1) { null!! } }
|
||||
|
||||
fun <T> fail3(block: () -> T): Pair<Array<T>, Array<T>> = Pair(<!TYPE_PARAMETER_AS_REIFIED!>array<!>(
|
||||
block()), <!TYPE_PARAMETER_AS_REIFIED!>array<!>()
|
||||
)
|
||||
inline fun <reified T> ok5(block: () -> T): Pair<Array<T>, Array<T>> = Pair(
|
||||
array(block()), array()
|
||||
)
|
||||
|
||||
@@ -0,0 +1,10 @@
|
||||
package
|
||||
|
||||
internal fun </*0*/ T> fail1(): kotlin.Array<T>
|
||||
internal fun </*0*/ T> fail2(): kotlin.Array<T>
|
||||
internal fun </*0*/ T> fail3(/*0*/ block: () -> T): kotlin.Pair<kotlin.Array<T>, kotlin.Array<T>>
|
||||
internal fun </*0*/ T> ok1(/*0*/ block: () -> kotlin.Array<T>): kotlin.Array<T>
|
||||
kotlin.inline() internal fun </*0*/ reified T> ok2(): kotlin.Array<T>
|
||||
internal fun </*0*/ T> ok3(/*0*/ block: () -> kotlin.Array<T>): kotlin.Array<T>
|
||||
kotlin.inline() internal fun </*0*/ reified T> ok4(): kotlin.Array<T>
|
||||
kotlin.inline() internal fun </*0*/ reified T> ok5(/*0*/ block: () -> T): kotlin.Pair<kotlin.Array<T>, kotlin.Array<T>>
|
||||
@@ -635,6 +635,12 @@ public class JetDiagnosticsTestWithStdLibGenerated extends AbstractJetDiagnostic
|
||||
JetTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/diagnostics/testsWithStdLib/reified"), Pattern.compile("^(.+)\\.kt$"), true);
|
||||
}
|
||||
|
||||
@TestMetadata("arrayConstruction.kt")
|
||||
public void testArrayConstruction() throws Exception {
|
||||
String fileName = JetTestUtils.navigationMetadata("compiler/testData/diagnostics/testsWithStdLib/reified/arrayConstruction.kt");
|
||||
doTest(fileName);
|
||||
}
|
||||
|
||||
@TestMetadata("arrayOfNullsReified.kt")
|
||||
public void testArrayOfNullsReified() throws Exception {
|
||||
String fileName = JetTestUtils.navigationMetadata("compiler/testData/diagnostics/testsWithStdLib/reified/arrayOfNullsReified.kt");
|
||||
|
||||
Reference in New Issue
Block a user