Do not throw assertion on recursion in typealias declaration,

return empty list of descriptors instead, allowing for proper error
reporting later.
#KT-18344 fixed
This commit is contained in:
Ilya Chernikov
2020-12-16 19:42:35 +01:00
parent 02c617468f
commit 9ee17cd610
6 changed files with 22 additions and 1 deletions
@@ -50,7 +50,7 @@ protected constructor(
private val propertyDescriptors: MemoizedFunctionToNotNull<Name, Collection<PropertyDescriptor>> =
storageManager.createMemoizedFunction { doGetProperties(it) }
private val typeAliasDescriptors: MemoizedFunctionToNotNull<Name, Collection<TypeAliasDescriptor>> =
storageManager.createMemoizedFunction { doGetTypeAliases(it) }
storageManager.createMemoizedFunction( { doGetTypeAliases(it) }, onRecursiveCall = { _,_ -> emptyList() })
private val declaredFunctionDescriptors: MemoizedFunctionToNotNull<Name, Collection<SimpleFunctionDescriptor>> =
storageManager.createMemoizedFunction { getDeclaredFunctions(it) }