Error diagnostic for private classes in inline functions; Fix for KT-7545: IllegalAccessError when accessing private nested class through inlined function from different package
#KT-7545 Fixed
This commit is contained in:
@@ -0,0 +1,25 @@
|
||||
// !DIAGNOSTICS: -EXPOSED_PARAMETER_TYPE
|
||||
|
||||
private class S public constructor() {
|
||||
fun a() {
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
internal inline fun x(s: S, z: () -> Unit) {
|
||||
z()
|
||||
<!PRIVATE_CLASS_MEMBER_FROM_INLINE!>S<!>()
|
||||
s.<!PRIVATE_CLASS_MEMBER_FROM_INLINE!>a<!>()
|
||||
test()
|
||||
}
|
||||
|
||||
private inline fun x2(s: S, z: () -> Unit) {
|
||||
z()
|
||||
S()
|
||||
s.a()
|
||||
test()
|
||||
}
|
||||
|
||||
private fun test(): S {
|
||||
return S()
|
||||
}
|
||||
Reference in New Issue
Block a user