From 49623a75ee670332f8b86cc37fa941542584dcfc Mon Sep 17 00:00:00 2001
From: gatopeich <gatoguan-os@yahoo.com>
Date: Tue, 23 Jun 2020 11:30:52 +0100
Subject: [PATCH] Revert "Using ordered_json instead of fifo_map in
 test-regression"

This reverts commit 5fe3d3929a523eef4c64f0893db0969a12d3704e.
---
 include/nlohmann/json.hpp        | 4 +++-
 single_include/nlohmann/json.hpp | 4 +++-
 test/src/unit-regression.cpp     | 6 +++++-
 3 files changed, 11 insertions(+), 3 deletions(-)

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