Include what you spell

PiperOrigin-RevId: 555205956
Change-Id: I935b95c29a8d5b69fe45cc0fe1aadb7106d31df3
diff --git a/absl/status/BUILD.bazel b/absl/status/BUILD.bazel
index 1f58b30..6a6fb29 100644
--- a/absl/status/BUILD.bazel
+++ b/absl/status/BUILD.bazel
@@ -43,6 +43,7 @@
     linkopts = ABSL_DEFAULT_LINKOPTS,
     deps = [
         "//absl/base:atomic_hook",
+        "//absl/base:config",
         "//absl/base:core_headers",
         "//absl/base:raw_logging_internal",
         "//absl/base:strerror",
@@ -50,10 +51,12 @@
         "//absl/debugging:stacktrace",
         "//absl/debugging:symbolize",
         "//absl/functional:function_ref",
+        "//absl/memory",
         "//absl/strings",
         "//absl/strings:cord",
         "//absl/strings:str_format",
         "//absl/types:optional",
+        "//absl/types:span",
     ],
 )
 
@@ -65,6 +68,7 @@
     deps = [
         ":status",
         "//absl/strings",
+        "//absl/strings:cord",
         "@com_google_googletest//:gtest_main",
     ],
 )
@@ -83,6 +87,7 @@
     deps = [
         ":status",
         "//absl/base",
+        "//absl/base:config",
         "//absl/base:core_headers",
         "//absl/base:raw_logging_internal",
         "//absl/meta:type_traits",
@@ -103,6 +108,7 @@
         "//absl/memory",
         "//absl/strings",
         "//absl/types:any",
+        "//absl/types:variant",
         "//absl/utility",
         "@com_google_googletest//:gtest_main",
     ],
diff --git a/absl/status/CMakeLists.txt b/absl/status/CMakeLists.txt
index 4a3c5d6..ed2e384 100644
--- a/absl/status/CMakeLists.txt
+++ b/absl/status/CMakeLists.txt
@@ -34,11 +34,13 @@
     absl::core_headers
     absl::function_ref
     absl::inlined_vector
+    absl::memory
     absl::optional
     absl::raw_logging_internal
+    absl::span
     absl::stacktrace
-    absl::str_format
     absl::strerror
+    absl::str_format
     absl::strings
     absl::symbolize
   PUBLIC
@@ -69,11 +71,12 @@
     ${ABSL_DEFAULT_COPTS}
   DEPS
     absl::base
-    absl::status
+    absl::config
     absl::core_headers
     absl::raw_logging_internal
-    absl::type_traits
+    absl::status
     absl::strings
+    absl::type_traits
     absl::utility
     absl::variant
   PUBLIC
diff --git a/absl/status/status.cc b/absl/status/status.cc
index 26e6829..577dea4 100644
--- a/absl/status/status.cc
+++ b/absl/status/status.cc
@@ -15,19 +15,33 @@
 
 #include <errno.h>
 
-#include <cassert>
+#include <atomic>
+#include <cstddef>
+#include <cstdint>
+#include <cstring>
+#include <memory>
+#include <ostream>
+#include <string>
 #include <utility>
 
+#include "absl/base/attributes.h"
+#include "absl/base/config.h"
 #include "absl/base/internal/raw_logging.h"
 #include "absl/base/internal/strerror.h"
 #include "absl/base/macros.h"
 #include "absl/debugging/stacktrace.h"
 #include "absl/debugging/symbolize.h"
+#include "absl/functional/function_ref.h"
+#include "absl/memory/memory.h"
+#include "absl/status/internal/status_internal.h"
 #include "absl/status/status_payload_printer.h"
 #include "absl/strings/escaping.h"
 #include "absl/strings/str_cat.h"
 #include "absl/strings/str_format.h"
 #include "absl/strings/str_split.h"
+#include "absl/strings/string_view.h"
+#include "absl/types/optional.h"
+#include "absl/types/span.h"
 
 namespace absl {
 ABSL_NAMESPACE_BEGIN
diff --git a/absl/status/status_payload_printer.cc b/absl/status/status_payload_printer.cc
index a47aea1..98401e9 100644
--- a/absl/status/status_payload_printer.cc
+++ b/absl/status/status_payload_printer.cc
@@ -13,9 +13,7 @@
 // limitations under the License.
 #include "absl/status/status_payload_printer.h"
 
-#include <atomic>
-
-#include "absl/base/attributes.h"
+#include "absl/base/config.h"
 #include "absl/base/internal/atomic_hook.h"
 
 namespace absl {
diff --git a/absl/status/status_test.cc b/absl/status/status_test.cc
index 898a9cb..6d3cf6f 100644
--- a/absl/status/status_test.cc
+++ b/absl/status/status_test.cc
@@ -16,8 +16,14 @@
 
 #include <errno.h>
 
+#include <array>
+#include <cstddef>
+#include <sstream>
+#include <utility>
+
 #include "gmock/gmock.h"
 #include "gtest/gtest.h"
+#include "absl/strings/cord.h"
 #include "absl/strings/str_cat.h"
 
 namespace {
diff --git a/absl/status/statusor.cc b/absl/status/statusor.cc
index 96642b3..bfad75e 100644
--- a/absl/status/statusor.cc
+++ b/absl/status/statusor.cc
@@ -17,7 +17,9 @@
 #include <utility>
 
 #include "absl/base/call_once.h"
+#include "absl/base/config.h"
 #include "absl/base/internal/raw_logging.h"
+#include "absl/status/internal/statusor_internal.h"
 #include "absl/status/status.h"
 #include "absl/strings/str_cat.h"
 
diff --git a/absl/status/statusor_test.cc b/absl/status/statusor_test.cc
index e65f5d2..b4967e4 100644
--- a/absl/status/statusor_test.cc
+++ b/absl/status/statusor_test.cc
@@ -15,11 +15,14 @@
 #include "absl/status/statusor.h"
 
 #include <array>
+#include <cstddef>
 #include <initializer_list>
+#include <map>
 #include <memory>
 #include <string>
 #include <type_traits>
 #include <utility>
+#include <vector>
 
 #include "gmock/gmock.h"
 #include "gtest/gtest.h"
@@ -28,6 +31,7 @@
 #include "absl/status/status.h"
 #include "absl/strings/string_view.h"
 #include "absl/types/any.h"
+#include "absl/types/variant.h"
 #include "absl/utility/utility.h"
 
 namespace {