diff --git a/analysis/low-level-api-fir/testdata/getOrBuildFir/invalidCode/expectAndActualInTheSameFile.kt b/analysis/low-level-api-fir/testdata/getOrBuildFir/invalidCode/expectAndActualInTheSameFile.kt
new file mode 100644
index 00000000000..fbb03fc7ac0
--- /dev/null
+++ b/analysis/low-level-api-fir/testdata/getOrBuildFir/invalidCode/expectAndActualInTheSameFile.kt
@@ -0,0 +1,12 @@
+fun main() {
+ println("Hello, Kotlin/Native!")
+}
+
+expect fun f()
+
+fun test() {
+}
+
+actual fun f() { println("Hello") }
+
+
diff --git a/analysis/low-level-api-fir/testdata/getOrBuildFir/invalidCode/expectAndActualInTheSameFile.txt b/analysis/low-level-api-fir/testdata/getOrBuildFir/invalidCode/expectAndActualInTheSameFile.txt
new file mode 100644
index 00000000000..65e72374345
--- /dev/null
+++ b/analysis/low-level-api-fir/testdata/getOrBuildFir/invalidCode/expectAndActualInTheSameFile.txt
@@ -0,0 +1,16 @@
+KT element: KtCallExpression
+FIR element: FirFunctionCallImpl
+FIR source kind: KtRealSourceElementKind
+
+FIR element rendered:
+#(String(Hello))
+
+FIR FILE:
+FILE: [ResolvedTo(IMPORTS)] expectAndActualInTheSameFile.kt
+ [ResolvedTo(BODY_RESOLVE)] annotations container
+ public? final? [ResolvedTo(RAW_FIR)] fun main(): R|kotlin/Unit| { LAZY_BLOCK }
+ public? final? expect [ResolvedTo(RAW_FIR)] fun f(): R|kotlin/Unit|
+ public? final? [ResolvedTo(RAW_FIR)] fun test(): R|kotlin/Unit| { LAZY_BLOCK }
+ public final actual [ResolvedTo(BODY_RESOLVE)] [ExpectForActualAttributeKey={}] fun f(): R|kotlin/Unit| {
+ #(String(Hello))
+ }
diff --git a/analysis/low-level-api-fir/tests/org/jetbrains/kotlin/analysis/low/level/api/fir/OutOfContentRootGetOrBuildFirTestGenerated.java b/analysis/low-level-api-fir/tests/org/jetbrains/kotlin/analysis/low/level/api/fir/OutOfContentRootGetOrBuildFirTestGenerated.java
index dbcf52664b6..f74b089e7f6 100644
--- a/analysis/low-level-api-fir/tests/org/jetbrains/kotlin/analysis/low/level/api/fir/OutOfContentRootGetOrBuildFirTestGenerated.java
+++ b/analysis/low-level-api-fir/tests/org/jetbrains/kotlin/analysis/low/level/api/fir/OutOfContentRootGetOrBuildFirTestGenerated.java
@@ -871,6 +871,12 @@ public class OutOfContentRootGetOrBuildFirTestGenerated extends AbstractOutOfCon
runTest("analysis/low-level-api-fir/testdata/getOrBuildFir/invalidCode/duplicatedClassesFunctionParameter.kt");
}
+ @Test
+ @TestMetadata("expectAndActualInTheSameFile.kt")
+ public void testExpectAndActualInTheSameFile() throws Exception {
+ runTest("analysis/low-level-api-fir/testdata/getOrBuildFir/invalidCode/expectAndActualInTheSameFile.kt");
+ }
+
@Test
@TestMetadata("incompletePropertyWithAnnotation.kt")
public void testIncompletePropertyWithAnnotation() throws Exception {
diff --git a/analysis/low-level-api-fir/tests/org/jetbrains/kotlin/analysis/low/level/api/fir/SourceGetOrBuildFirTestGenerated.java b/analysis/low-level-api-fir/tests/org/jetbrains/kotlin/analysis/low/level/api/fir/SourceGetOrBuildFirTestGenerated.java
index 9a797e57550..b8688df5f47 100644
--- a/analysis/low-level-api-fir/tests/org/jetbrains/kotlin/analysis/low/level/api/fir/SourceGetOrBuildFirTestGenerated.java
+++ b/analysis/low-level-api-fir/tests/org/jetbrains/kotlin/analysis/low/level/api/fir/SourceGetOrBuildFirTestGenerated.java
@@ -871,6 +871,12 @@ public class SourceGetOrBuildFirTestGenerated extends AbstractSourceGetOrBuildFi
runTest("analysis/low-level-api-fir/testdata/getOrBuildFir/invalidCode/duplicatedClassesFunctionParameter.kt");
}
+ @Test
+ @TestMetadata("expectAndActualInTheSameFile.kt")
+ public void testExpectAndActualInTheSameFile() throws Exception {
+ runTest("analysis/low-level-api-fir/testdata/getOrBuildFir/invalidCode/expectAndActualInTheSameFile.kt");
+ }
+
@Test
@TestMetadata("incompletePropertyWithAnnotation.kt")
public void testIncompletePropertyWithAnnotation() throws Exception {