Minor: IR verifier should always check receiver descriptors

This commit is contained in:
Dmitry Petrov
2017-05-05 15:08:29 +03:00
parent 1dbd6453e0
commit 5f57368b4f
@@ -142,18 +142,18 @@ abstract class AbstractIrTextTestCase : AbstractIrGeneratorTestCase() {
checkTypeParameters(functionDescriptor, declaration, functionDescriptor.typeParameters) checkTypeParameters(functionDescriptor, declaration, functionDescriptor.typeParameters)
declaration.dispatchReceiverParameter?.descriptor.let { dispatchReceiverDescriptor -> val expectedDispatchReceiver = functionDescriptor.dispatchReceiverParameter
if (dispatchReceiverDescriptor != functionDescriptor.dispatchReceiverParameter) { val actualDispatchReceiver = declaration.dispatchReceiverParameter?.descriptor
error("$functionDescriptor: Dispatch receiver parameter mismatch: " + if (expectedDispatchReceiver != actualDispatchReceiver) {
"$dispatchReceiverDescriptor != ${functionDescriptor.dispatchReceiverParameter}") error("$functionDescriptor: Dispatch receiver parameter mismatch: " +
} "expected $expectedDispatchReceiver, actual $actualDispatchReceiver")
} }
declaration.extensionReceiverParameter?.descriptor.let { extensionReceiverDescriptor -> val expectedExtensionReceiver = functionDescriptor.extensionReceiverParameter
if (extensionReceiverDescriptor != functionDescriptor.extensionReceiverParameter) { val actualExtensionReceiver = declaration.extensionReceiverParameter?.descriptor
error("$functionDescriptor: Extension receiver parameter mismatch: " + if (expectedExtensionReceiver != actualExtensionReceiver) {
"$extensionReceiverDescriptor != ${functionDescriptor.extensionReceiverParameter}") error("$functionDescriptor: Extension receiver parameter mismatch: " +
} "expected $expectedExtensionReceiver, actual $actualExtensionReceiver")
} }
val declaredValueParameters = declaration.valueParameters.map { it.descriptor } val declaredValueParameters = declaration.valueParameters.map { it.descriptor }