diff --git a/src/dawn/common/BUILD.gn b/src/dawn/common/BUILD.gn
index a2fa395..461d726 100644
--- a/src/dawn/common/BUILD.gn
+++ b/src/dawn/common/BUILD.gn
@@ -251,6 +251,7 @@
       "${dawn_root}/third_party/gn/abseil-cpp:flat_hash_set",
       "${dawn_root}/third_party/gn/abseil-cpp:inlined_vector",
       "${dawn_root}/third_party/gn/abseil-cpp:no_destructor",
+      "${dawn_root}/third_party/gn/abseil-cpp:overload",
     ]
   }
 }
diff --git a/src/dawn/common/CMakeLists.txt b/src/dawn/common/CMakeLists.txt
index bbf2ccd..0360786 100644
--- a/src/dawn/common/CMakeLists.txt
+++ b/src/dawn/common/CMakeLists.txt
@@ -181,6 +181,7 @@
     PRIVATE_DEPENDS
         absl::inlined_vector
         absl::no_destructor
+        absl::overload
         dawn::partition_alloc
         dawn_shared_utils
         ${conditional_private_depends}
diff --git a/src/dawn/common/MatchVariant.h b/src/dawn/common/MatchVariant.h
index e691893..f36f7951 100644
--- a/src/dawn/common/MatchVariant.h
+++ b/src/dawn/common/MatchVariant.h
@@ -30,53 +30,17 @@
 
 #include <variant>
 
+#include "absl/functional/overload.h"
+
 namespace dawn {
 
-// This is the `Overloaded` template in chromium/src/base/functional/Overloaded.h.
-// std::visit() needs to be called with a functor object, such as
-//
-//  struct Visitor {
-//    std::string operator()(const PackageA& source) {
-//      return "PackageA";
-//    }
-//
-//    std::string operator()(const PackageB& source) {
-//      return "PackageB";
-//    }
-//  };
-//
-//  std::variant<PackageA, PackageB> var = PackageA();
-//  return std::visit(Visitor(), var);
-//
-// `Overloaded` enables the above code to be written as:
-//
-//  std::visit(
-//     Overloaded{
-//         [](const PackageA& pack) { return "PackageA"; },
-//         [](const PackageB& pack) { return "PackageB"; },
-//     }, var);
-//
-// Note: Overloads must be implemented for all the variant options. Otherwise, there will be a
-// compilation error.
-//
-// This struct inherits operator() method from all its base classes. Introduces operator() method
-// from all its base classes into its definition.
-template <typename... Callables>
-struct Overloaded : Callables... {
-    using Callables::operator()...;
-};
-
-// Uses template argument deduction so that the `Overloaded` struct can be used without specifying
-// its template argument. This allows anonymous lambdas passed into the `Overloaded` constructor.
-template <typename... Callables>
-Overloaded(Callables...) -> Overloaded<Callables...>;
-
-// With this template we can simplify the call of std::visit(Overloaded{...}, variant).
+// With this template we can simplify the call of
+// std::visit(absl::Overload{...}, variant).
 template <typename Variant, typename... Callables>
 auto MatchVariant(const Variant& v, Callables... args) {
-    return std::visit(Overloaded{args...}, v);
+    return std::visit(absl::Overload{args...}, v);
 }
 
 }  // namespace dawn
 
-#endif
+#endif  // SRC_DAWN_COMMON_MATCHVARIANT_H_
diff --git a/third_party/gn/abseil-cpp/BUILD.gn b/third_party/gn/abseil-cpp/BUILD.gn
index fc03573..4e34b8d 100644
--- a/third_party/gn/abseil-cpp/BUILD.gn
+++ b/third_party/gn/abseil-cpp/BUILD.gn
@@ -920,6 +920,14 @@
   ]
 }
 
+absl_source_set("overload") {
+  public = [ "${dawn_abseil_dir}/absl/functional/overload.h" ]
+  deps = [
+    ":config",
+    ":type_traits",
+  ]
+}
+
 absl_source_set("utf8_for_code_point") {
   sources =
       [ "${dawn_abseil_dir}/absl/debugging/internal/utf8_for_code_point.cc" ]
