Add diagnostic exceptions
diff --git a/compiler/ir/backend.jvm/src/org/jetbrains/kotlin/backend/jvm/MemoizedInlineClassReplacements.kt b/compiler/ir/backend.jvm/src/org/jetbrains/kotlin/backend/jvm/MemoizedInlineClassReplacements.kt
index c23c838..c630700 100644
--- a/compiler/ir/backend.jvm/src/org/jetbrains/kotlin/backend/jvm/MemoizedInlineClassReplacements.kt
+++ b/compiler/ir/backend.jvm/src/org/jetbrains/kotlin/backend/jvm/MemoizedInlineClassReplacements.kt
@@ -19,6 +19,7 @@
 import org.jetbrains.kotlin.ir.types.impl.IrSimpleTypeImpl
 import org.jetbrains.kotlin.ir.types.impl.IrStarProjectionImpl
 import org.jetbrains.kotlin.ir.util.*
+import org.jetbrains.kotlin.name.FqName
 import org.jetbrains.kotlin.name.Name
 import org.jetbrains.kotlin.resolve.InlineClassDescriptorResolver
 import org.jetbrains.kotlin.storage.LockBasedStorageManager
@@ -246,11 +247,31 @@
             val resolved = (function as? IrSimpleFunction)?.resolveFakeOverrideMaybeAbstractOrFail()
             if (resolved?.parentClassId?.let { classFileContainsMethod(it, replacement, context) } == false) {
                 return buildReplacementInner(function, replacementOrigin, noFakeOverride, true, body)
+            } else if (function.isDurationInline()) {
+                throw IllegalStateException(
+                    "Somehow found new mangling scheme in stdlib\n" +
+                            "function = ${function.dump()}" +
+                            "replacement = ${replacement.dump()}" +
+                            "resolved = ${resolved?.dump()}" +
+                            "parent = ${function.parentClassId?.asString()}"
+                )
             }
+        } else if (!useOldManglingScheme && function.isDurationInline()) {
+            throw IllegalStateException(
+                "Failed to use old mangling scheme for Duration Companion's inline properties\n" +
+                        "function = ${function.dump()}" +
+                        "useOldManglingScheme = $useOldManglingScheme\n" +
+                        "replacement = ${replacement.dump()}" +
+                        "parent = ${function.parentClassId?.asString()}"
+            )
         }
         return replacement
     }
 
+    private fun IrFunction.isDurationInline(): Boolean =
+        (parent as? IrClass)?.fqNameWhenAvailable == FqName("kotlin.time.Duration.Companion") &&
+                isInline
+
     private fun buildReplacementInner(
         function: IrFunction,
         replacementOrigin: IrDeclarationOrigin,