[FIR] Create 'FirCodeFragment' with a lazy block if requested
diff --git a/compiler/fir/raw-fir/psi2fir/src/org/jetbrains/kotlin/fir/builder/PsiRawFirBuilder.kt b/compiler/fir/raw-fir/psi2fir/src/org/jetbrains/kotlin/fir/builder/PsiRawFirBuilder.kt
index fa3231c..e34f302 100644
--- a/compiler/fir/raw-fir/psi2fir/src/org/jetbrains/kotlin/fir/builder/PsiRawFirBuilder.kt
+++ b/compiler/fir/raw-fir/psi2fir/src/org/jetbrains/kotlin/fir/builder/PsiRawFirBuilder.kt
@@ -1181,10 +1181,12 @@
                 moduleData = baseModuleData
                 origin = FirDeclarationOrigin.Source
                 symbol = FirCodeFragmentSymbol()
-                block = when (file) {
-                    is KtExpressionCodeFragment -> file.getContentElement()?.toFirBlock() ?: buildEmptyExpressionBlock()
-                    is KtBlockCodeFragment -> configureBlockWithoutBuilding(file.getContentElement()).build()
-                    else -> error("Unexpected code fragment type: " + file::class.java)
+                block = buildOrLazyBlock {
+                    when (file) {
+                        is KtExpressionCodeFragment -> file.getContentElement()?.toFirBlock() ?: buildEmptyExpressionBlock()
+                        is KtBlockCodeFragment -> configureBlockWithoutBuilding(file.getContentElement()).build()
+                        else -> error("Unexpected code fragment type: " + file::class.java)
+                    }
                 }
             }
         }