diff --git a/clang/lib/Sema/SemaType.cpp b/clang/lib/Sema/SemaType.cpp
index 49a5dcb..020e39f 100644
--- a/clang/lib/Sema/SemaType.cpp
+++ b/clang/lib/Sema/SemaType.cpp
@@ -8060,10 +8060,10 @@
   } else if (auto *ED = dyn_cast<EnumDecl>(D)) {
     if (auto *Pattern = ED->getTemplateInstantiationPattern())
       ED = Pattern;
-    if (OnlyNeedComplete && ED->isFixed()) {
-      // If the enum has a fixed underlying type, and we're only looking for a
-      // complete type (not a definition), any visible declaration of it will
-      // do.
+    if (OnlyNeedComplete && !ED->getIntegerType().isNull()) {
+      // If the enum has an integer type, it may have been forward declared.
+      // Since we're only looking for a complete type (not a definition), any
+      // visible declaration of it will do.
       *Suggested = nullptr;
       for (auto *Redecl : ED->redecls()) {
         if (isVisible(Redecl))
diff --git a/clang/test/Modules/Inputs/ms-enums/A.h b/clang/test/Modules/Inputs/ms-enums/A.h
new file mode 100644
index 0000000..1684452
--- /dev/null
+++ b/clang/test/Modules/Inputs/ms-enums/A.h
@@ -0,0 +1 @@
+enum fwd_enum;
diff --git a/clang/test/Modules/Inputs/ms-enums/B.h b/clang/test/Modules/Inputs/ms-enums/B.h
new file mode 100644
index 0000000..7a13ba4
--- /dev/null
+++ b/clang/test/Modules/Inputs/ms-enums/B.h
@@ -0,0 +1 @@
+#include "A.h"
diff --git a/clang/test/Modules/Inputs/ms-enums/module.map b/clang/test/Modules/Inputs/ms-enums/module.map
new file mode 100644
index 0000000..d9aed01
--- /dev/null
+++ b/clang/test/Modules/Inputs/ms-enums/module.map
@@ -0,0 +1,2 @@
+module A { header "A.h" }
+module B { header "B.h" }
diff --git a/clang/test/Modules/ms-enums.cpp b/clang/test/Modules/ms-enums.cpp
new file mode 100644
index 0000000..b3a377c
--- /dev/null
+++ b/clang/test/Modules/ms-enums.cpp
@@ -0,0 +1,12 @@
+// RUN: rm -rf %t
+// RUN: %clang_cc1 -triple x86_64-windows-msvc -fms-extensions -fms-compatibility -x c++ -std=c++20 -fmodules-cache-path=%t -fmodules -fimplicit-module-maps -I %S/Inputs/ms-enums %s -verify -fno-modules-error-recovery
+
+#include "B.h"
+// expected-note@A.h:1 {{previous declaration is here}}
+// expected-note@A.h:1 2 {{previous definition is here}}
+
+fwd_enum gv_enum; // expected-error {{must be imported}}
+
+struct Foo {
+  enum fwd_enum enum_field; // expected-error 2 {{must be imported}}
+};
