From 2a713a972d2a9de8d5359c20843b91a8f86931a5 Mon Sep 17 00:00:00 2001 From: Denis Zharkov Date: Wed, 11 Apr 2018 10:47:20 +0300 Subject: [PATCH] Postpone computing AST when it's used only for reporting --- .../frontend/src/org/jetbrains/kotlin/resolve/TypeResolver.kt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/compiler/frontend/src/org/jetbrains/kotlin/resolve/TypeResolver.kt b/compiler/frontend/src/org/jetbrains/kotlin/resolve/TypeResolver.kt index 1caf74be07d..a3a54c2c933 100644 --- a/compiler/frontend/src/org/jetbrains/kotlin/resolve/TypeResolver.kt +++ b/compiler/frontend/src/org/jetbrains/kotlin/resolve/TypeResolver.kt @@ -192,7 +192,7 @@ class TypeResolver( var result: PossiblyBareType? = null val hasSuspendModifier = outerModifierList?.hasModifier(KtTokens.SUSPEND_KEYWORD) ?: false - val suspendModifier = outerModifierList?.getModifier(KtTokens.SUSPEND_KEYWORD) + val suspendModifier by lazy { outerModifierList?.getModifier(KtTokens.SUSPEND_KEYWORD) } if (hasSuspendModifier && !typeElement.canHaveFunctionTypeModifiers()) { c.trace.report(Errors.WRONG_MODIFIER_TARGET.on(suspendModifier!!, KtTokens.SUSPEND_KEYWORD, "non-functional type")) } else if (hasSuspendModifier) {