diff --git a/libstdc++-v3/ChangeLog b/libstdc++-v3/ChangeLog
index 583e4a986b0fac3d796404cab55e340326ddc34b..bca28e670b99faaf523fd5c473bbbe7e1835d903 100644
--- a/libstdc++-v3/ChangeLog
+++ b/libstdc++-v3/ChangeLog
@@ -1,3 +1,7 @@
+2019-09-02  Jonathan Wakely  <jwakely@redhat.com>
+
+	* src/c++17/memory_resource.cc: Use __constinit keyword.
+
 2019-09-02  Jonathan Wakely  <jwakely@redhat.com>
 
 	* doc/xml/manual/abi.xml: Document 9.x library versions.
diff --git a/libstdc++-v3/src/c++17/memory_resource.cc b/libstdc++-v3/src/c++17/memory_resource.cc
index b6698011f5cdec8bef88f338b51f332df5763ddf..2b64039d280c626daa840e863752da25ddc4de62 100644
--- a/libstdc++-v3/src/c++17/memory_resource.cc
+++ b/libstdc++-v3/src/c++17/memory_resource.cc
@@ -85,8 +85,8 @@ namespace pmr
 	~constant_init() { /* do nothing, union member is not destroyed */ }
       };
 
-    constant_init<newdel_res_t> newdel_res{};
-    constant_init<null_res_t> null_res{};
+    __constinit constant_init<newdel_res_t> newdel_res{};
+    __constinit constant_init<null_res_t> null_res{};
 #if ATOMIC_POINTER_LOCK_FREE == 2
     using atomic_mem_res = atomic<memory_resource*>;
 # define _GLIBCXX_ATOMIC_MEM_RES_CAN_BE_CONSTANT_INITIALIZED
@@ -139,7 +139,7 @@ namespace pmr
 #endif // ATOMIC_POINTER_LOCK_FREE == 2
 
 #ifdef _GLIBCXX_ATOMIC_MEM_RES_CAN_BE_CONSTANT_INITIALIZED
-    constant_init<atomic_mem_res> default_res{&newdel_res.obj};
+    __constinit constant_init<atomic_mem_res> default_res{&newdel_res.obj};
 #else
 # include "default_resource.h"
 #endif