diff --git a/build/gen.py b/build/gen.py
index 232e536..07b699b 100755
--- a/build/gen.py
+++ b/build/gen.py
@@ -466,7 +466,7 @@
         '-Wextra-semi',
         '-Wundef',
 
-        '-std=c++17'
+        '-std=c++20'
     ])
 
     # flags not supported by gcc/g++.
@@ -482,7 +482,7 @@
         ldflags.append('-static-libstdc++')
 
       if platform.is_mingw() or platform.is_msys():
-        cflags.remove('-std=c++17')
+        cflags.remove('-std=c++20')
         cflags.extend([
           '-Wno-deprecated-copy',
           '-Wno-implicit-fallthrough',
@@ -491,7 +491,7 @@
           '-Wno-format',             # Use of %llx, which is supported by _UCRT, false positive
           '-Wno-strict-aliasing',    # Dereferencing punned pointer
           '-Wno-cast-function-type', # Casting FARPROC to RegDeleteKeyExPtr
-          '-std=gnu++17',
+          '-std=gnu++20',
         ])
       else:
         # This is needed by libc++.
@@ -561,7 +561,7 @@
         '/wd4505',
         '/wd4838',
         '/wd4996',
-        '/std:c++17',
+        '/std:c++20',
         '/GR-',
         '/D_HAS_EXCEPTIONS=0',
     ])
diff --git a/src/base/files/file_path.cc b/src/base/files/file_path.cc
index 1959133..3b53abc 100644
--- a/src/base/files/file_path.cc
+++ b/src/base/files/file_path.cc
@@ -8,6 +8,7 @@
 
 #include <algorithm>
 #include <iterator>
+#include <string>
 #include <string_view>
 
 #include "base/logging.h"
@@ -623,8 +624,9 @@
 
 FilePath FilePath::NormalizePathSeparatorsTo(CharType separator) const {
 #if defined(FILE_PATH_USES_WIN_SEPARATORS)
-  DCHECK_NE(kSeparators + kSeparatorsLength,
-            std::find(kSeparators, kSeparators + kSeparatorsLength, separator));
+  DCHECK_NE(static_cast<const void*>(kSeparators + kSeparatorsLength),
+            static_cast<const void*>(std::find(
+                kSeparators, kSeparators + kSeparatorsLength, separator)));
   StringType copy = path_;
   for (size_t i = 0; i < kSeparatorsLength; ++i) {
     std::replace(copy.begin(), copy.end(), kSeparators[i], separator);
diff --git a/src/base/strings/string_util.cc b/src/base/strings/string_util.cc
index 5af7715..e1b494d 100644
--- a/src/base/strings/string_util.cc
+++ b/src/base/strings/string_util.cc
@@ -19,6 +19,7 @@
 #include <algorithm>
 #include <iterator>
 #include <limits>
+#include <string>
 #include <vector>
 
 #include "base/logging.h"
@@ -963,7 +964,7 @@
           --i;
         } else {
           if (*i < '1' || *i > '9') {
-            DLOG(ERROR) << "Invalid placeholder: $" << *i;
+            DLOG(ERROR) << "Invalid placeholder: $" << std::to_string(*i);
             continue;
           }
           uintptr_t index = *i - '1';
diff --git a/src/base/value_iterators.cc b/src/base/value_iterators.cc
index ba9c730..4765f73 100644
--- a/src/base/value_iterators.cc
+++ b/src/base/value_iterators.cc
@@ -4,6 +4,8 @@
 
 #include "base/value_iterators.h"
 
+#include "base/values.h"
+
 namespace base {
 
 namespace detail {
diff --git a/src/gn/substitution_type.h b/src/gn/substitution_type.h
index d359a30..2d0c3bc 100644
--- a/src/gn/substitution_type.h
+++ b/src/gn/substitution_type.h
@@ -15,8 +15,10 @@
 // Each pair here represents the string representation of the substitution in GN
 // and in Ninja.
 struct Substitution {
-  const char* name;
-  const char* ninja_name;
+  const char* name = nullptr;
+  const char* ninja_name = nullptr;
+  Substitution(const char* name, const char* ninja_name)
+      : name(name), ninja_name(ninja_name) {}
   Substitution(const Substitution&) = delete;
   Substitution& operator=(const Substitution&) = delete;
 };
