diff --git a/indra/llappearance/llavatarappearance.h b/indra/llappearance/llavatarappearance.h
index e20725579853b7245d81517a8ea8c01b62270b72..812e065aa57387e91aa82a84f5a0eab298c9f916 100644
--- a/indra/llappearance/llavatarappearance.h
+++ b/indra/llappearance/llavatarappearance.h
@@ -142,7 +142,7 @@ class LLAvatarAppearance : public LLCharacter
 	LLVector3			mHeadOffset; // current head position
 	LLAvatarJoint		*mRoot;
 
-	typedef boost::unordered_flat_map<std::string, LLJoint*> joint_map_t;
+	typedef boost::unordered_flat_map<std::string, LLJoint*, al::string_hash, std::equal_to<>> joint_map_t;
 	joint_map_t			mJointMap;
 
     typedef std::map<std::string, LLVector3> joint_state_map_t;
diff --git a/indra/llcommon/llerror.cpp b/indra/llcommon/llerror.cpp
index 636083787d86c1d3e2bc368ff52ce554befa9d0a..1b2427c633406545fd03f500c5722333e973253f 100644
--- a/indra/llcommon/llerror.cpp
+++ b/indra/llcommon/llerror.cpp
@@ -499,7 +499,7 @@ namespace
 	}
 
 
-	typedef boost::unordered_flat_map<std::string, LLError::ELevel> LevelMap;
+	typedef boost::unordered_flat_map<std::string, LLError::ELevel, al::string_hash, std::equal_to<>> LevelMap;
 	typedef std::vector<LLError::RecorderPtr> Recorders;
 	typedef std::vector<LLError::CallSite*> CallSiteVector;
 
diff --git a/indra/llcommon/llinitparam.h b/indra/llcommon/llinitparam.h
index f219dce9fcd0e1134a04194825d076ef981e1466..25320fb683a95c58a1472a6db824e8bbfd1290ab 100644
--- a/indra/llcommon/llinitparam.h
+++ b/indra/llcommon/llinitparam.h
@@ -265,7 +265,7 @@ namespace LLInitParam
 	private:
 		struct Inaccessable{};
 	public:
-		typedef boost::unordered_flat_map<std::string, T> value_name_map_t;
+		typedef boost::unordered_flat_map<std::string, T, al::string_hash, std::equal_to<>> value_name_map_t;
 		typedef Inaccessable name_t;
 		typedef TypeValues<T> type_value_t;
 		typedef ParamValue<typename LLTypeTags::Sorted<T>::value_t>	param_value_t;
diff --git a/indra/llinventory/llsettingsbase.h b/indra/llinventory/llsettingsbase.h
index e420e4a8107874d258f1278507a7ec77c4dbca5b..49a73d3b074d9eb6040832f1fb87a9cbe489cf05 100644
--- a/indra/llinventory/llsettingsbase.h
+++ b/indra/llinventory/llsettingsbase.h
@@ -95,7 +95,7 @@ class LLSettingsBase :
     };
     // Contains settings' names (map key), related shader id-key and default
     // value for revert in case we need to reset shader (no need to search each time)
-    typedef boost::unordered_flat_map<std::string, DefaultParam>  parammapping_t;
+    typedef boost::unordered_flat_map<std::string, DefaultParam, al::string_hash, std::equal_to<>>  parammapping_t;
 
     typedef PTR_NAMESPACE::shared_ptr<LLSettingsBase> ptr_t;
 
@@ -329,7 +329,7 @@ class LLSettingsBase :
     LLSettingsBase();
     LLSettingsBase(const LLSD setting);
 
-    typedef boost::unordered_flat_set<std::string>   stringset_t;
+    typedef boost::unordered_flat_set<std::string, al::string_hash, std::equal_to<>>   stringset_t;
     
     // combining settings objects. Customize for specific setting types
     virtual void lerpSettings(const LLSettingsBase &other, BlendFactor mix);
diff --git a/indra/llmessage/llcachename.cpp b/indra/llmessage/llcachename.cpp
index 366ce79381411c0b3e1331a39345ed6c066b4142..1c142502abc2a54a2d82a70602b23beab57311fc 100644
--- a/indra/llmessage/llcachename.cpp
+++ b/indra/llmessage/llcachename.cpp
@@ -185,7 +185,7 @@ typedef std::set<LLUUID>					AskQueue;
 typedef std::list<PendingReply*>			ReplyQueue;
 typedef std::map<LLUUID,U32>				PendingQueue;
 typedef boost::unordered_flat_map<LLUUID, LLCacheNameEntry*> Cache;
-typedef boost::unordered_flat_map<std::string, LLUUID> 		ReverseCache;
+typedef boost::unordered_flat_map<std::string, LLUUID, al::string_hash, std::equal_to<>> 		ReverseCache;
 
 class LLCacheName::Impl
 {
diff --git a/indra/newview/llfloatermessagelog.h b/indra/newview/llfloatermessagelog.h
index a1f6edcf96b3fbd6d54059787aca85f30e33b7c6..ece7665ded2ca5c45a55b7b16e5dfdf5dfc463da 100644
--- a/indra/newview/llfloatermessagelog.h
+++ b/indra/newview/llfloatermessagelog.h
@@ -37,7 +37,7 @@ class LLFloaterMessageLog;
 typedef boost::circular_buffer<LogPayload> LogPayloadList;
 typedef std::shared_ptr<LLEasyMessageLogEntry> FloaterMessageItem;
 typedef std::vector<FloaterMessageItem> FloaterMessageList;
-typedef boost::container::flat_map<U64, FloaterMessageItem> HTTPConvoMap;
+typedef boost::unordered_map<U64, FloaterMessageItem> HTTPConvoMap;
 
 class LLMessageLogFilter
 {
@@ -51,8 +51,8 @@ class LLMessageLogFilter
 	std::string asString() const { return mInputString; }
 
 	//these should probably be unordered_sets
-	boost::container::flat_set<std::string> mPositiveNames;
-	boost::container::flat_set<std::string> mNegativeNames;
+	boost::unordered_flat_set<std::string, al::string_hash, std::equal_to<>> mPositiveNames;
+	boost::unordered_flat_set<std::string, al::string_hash, std::equal_to<>> mNegativeNames;
 
 protected:
 	std::string mInputString;
diff --git a/indra/newview/llviewermenu.cpp b/indra/newview/llviewermenu.cpp
index e7fbbf16888d0edd790c3a7c6eda2884d83279c5..49a8c52cd7aa70d07581a118991d6115044103f8 100644
--- a/indra/newview/llviewermenu.cpp
+++ b/indra/newview/llviewermenu.cpp
@@ -164,7 +164,7 @@ using namespace LLAvatarAppearanceDefines;
 
 typedef LLPointer<LLViewerObject> LLViewerObjectPtr;
 
-static boost::unordered_flat_map<std::string, LLStringExplicit> sDefaultItemLabels;
+static boost::unordered_flat_map<std::string, LLStringExplicit, al::string_hash, std::equal_to<>> sDefaultItemLabels;
 
 BOOL enable_land_build(void*);
 BOOL enable_object_build(void*);
diff --git a/indra/newview/llviewerregion.h b/indra/newview/llviewerregion.h
index da7c3fbe6b548ac06b91b87a74420c206be99248..7f575e993c3f6a6505ec106adfa4a91e7cdb2776 100644
--- a/indra/newview/llviewerregion.h
+++ b/indra/newview/llviewerregion.h
@@ -696,7 +696,7 @@ class LLViewerRegion final : public LLCapabilityProvider // implements this inte
     std::vector<LLPointer<LLReflectionMap> > mReflectionMaps;
 
 	mutable tex_matrix_t mWorldMapTiles;
-	boost::unordered_flat_set<std::string> mGodNames;
+	boost::unordered_flat_set<std::string, al::string_hash, std::equal_to<>> mGodNames;
 
 	LLEasyMessageSender mMessageSender;
 	using url_mapping_t = boost::unordered_multimap<std::string, std::string>;