Handle methods descriptor clash in data class

1. Extension functions declared in data classes are generated earlier by `generateMembersDeclaredInClassBody`
2. Extension functions fake override from parent class are generated earlier by `generateFakeOverrideMemberDeclarations`

So it is safe to filter out extension functions inside `generateAdditionalMembersForDataClass`

 #KT-49715
 #KT-51798
This commit is contained in:
Xin Wang
2022-03-15 17:57:53 +08:00
committed by Alexander Udalov
parent 4c461d7864
commit 24105139ea
11 changed files with 105 additions and 1 deletions
@@ -141,7 +141,8 @@ object CodegenUtil {
function.modality != Modality.FINAL &&
areParametersOk(function.valueParameters) &&
function.returnType != null &&
isReturnTypeOk(function.returnType!!)
isReturnTypeOk(function.returnType!!) &&
function.extensionReceiverParameter == null
}