Fix being unable to find declaration for substituted callable from library

#KT-5900 Fixed
#KT-5901 Fixed
This commit is contained in:
Pavel V. Talanov
2014-10-02 16:43:58 +04:00
parent 8f52f71378
commit af963ea244
5 changed files with 29 additions and 1 deletions
@@ -33,7 +33,7 @@ public class JetClsFile(val provider: JetClassFileViewProvider) : ClsFileImpl(pr
override fun getDecompiledPsiFile() = decompiledFile
public fun getDeclarationForDescriptor(descriptor: DeclarationDescriptor): JetDeclaration? {
val key = descriptorToKey(descriptor)
val key = descriptorToKey(descriptor.getOriginal())
val range = provider.decompiledText.renderedDescriptorsToRange[key]
if (range == null) {
return null
@@ -0,0 +1,7 @@
package test
import dependency.D
class C: D<Int>() {
<caret>
}
@@ -0,0 +1,10 @@
package test
import dependency.D
class C: D<Int>() {
override fun id(t: Int): Int {
return super<D>.id(t)
}
}
@@ -0,0 +1,7 @@
package dependency
public open class D<T> {
public open fun id(t: T): T {
return t
}
}
@@ -39,4 +39,8 @@ public final class OverrideImplementWithLibTest extends AbstractOverrideImplemen
public void testFakeOverride() {
doOverrideFileTest();
}
public void testGenericSubstituted() {
doOverrideFileTest();
}
}