diff --git a/include/nlohmann/json.hpp b/include/nlohmann/json.hpp
index dc44c12c..69afaf05 100644
--- a/include/nlohmann/json.hpp
+++ b/include/nlohmann/json.hpp
@@ -496,7 +496,9 @@ class basic_json
     using object_t = ObjectType<StringType,
           basic_json,
           object_comparator_t,
-          AllocatorType<typename ObjectType<StringType, basic_json>::value_type>>;
+          // Note: instantiating ObjectType with dummy allocator to extract ::value_type
+          AllocatorType<typename ObjectType<StringType, basic_json, object_comparator_t, AllocatorType<int>
+                                            >::value_type>>;
 
     /*!
     @brief a type for an array
diff --git a/single_include/nlohmann/json.hpp b/single_include/nlohmann/json.hpp
index 2d3d31a0..e6d87b31 100644
--- a/single_include/nlohmann/json.hpp
+++ b/single_include/nlohmann/json.hpp
@@ -16348,7 +16348,9 @@ class basic_json
     using object_t = ObjectType<StringType,
           basic_json,
           object_comparator_t,
-          AllocatorType<typename ObjectType<StringType, basic_json>::value_type>>;
+          // Note: instantiating ObjectType with dummy allocator to extract ::value_type
+          AllocatorType<typename ObjectType<StringType, basic_json, object_comparator_t, AllocatorType<int>
+                                            >::value_type>>;
 
     /*!
     @brief a type for an array
diff --git a/test/src/unit-regression.cpp b/test/src/unit-regression.cpp
index 143508a6..e5cd0337 100644
--- a/test/src/unit-regression.cpp
+++ b/test/src/unit-regression.cpp
@@ -52,11 +52,15 @@ using nlohmann::json;
     #include <variant>
 #endif
 
+#include "fifo_map.hpp"
+
 /////////////////////////////////////////////////////////////////////
 // for #972
 /////////////////////////////////////////////////////////////////////
 
-using my_json = nlohmann::ordered_json;
+template<class K, class V, class dummy_compare, class A>
+using my_workaround_fifo_map = nlohmann::fifo_map<K, V, nlohmann::fifo_map_compare<K>, A>;
+using my_json = nlohmann::basic_json<my_workaround_fifo_map>;
 
 /////////////////////////////////////////////////////////////////////
 // for #977