Do not build no-arg constructor overload for inner KtUltraLightClass
This commit is contained in:
@@ -276,6 +276,7 @@ class KtUltraLightClass(classOrObject: KtClassOrObject, private val support: Ult
|
||||
|
||||
private fun shouldGenerateNoArgOverload(primary: KtPrimaryConstructor): Boolean {
|
||||
return !primary.hasModifier(PRIVATE_KEYWORD) &&
|
||||
!classOrObject.hasModifier(INNER_KEYWORD) &&
|
||||
primary.valueParameters.isNotEmpty() &&
|
||||
primary.valueParameters.all { it.defaultValue != null } &&
|
||||
classOrObject.allConstructors.none { it.valueParameters.isEmpty() }
|
||||
|
||||
@@ -5,4 +5,9 @@ class A(vararg a: Int, f: () -> Unit) {}
|
||||
class B {
|
||||
@Deprecated("", level = DeprecationLevel.HIDDEN)
|
||||
constructor()
|
||||
}
|
||||
}
|
||||
|
||||
class Outer {
|
||||
inner class Inner(x: Int = 1, y: String = "")
|
||||
class Nested(x: Int = 1, y: String = "")
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user