From 2ff7f8a772e07335e4ab6788410858667189059e Mon Sep 17 00:00:00 2001
From: Richard Nelson <richard@lindenlab.com>
Date: Thu, 15 Oct 2009 21:35:30 +0000
Subject: [PATCH] fix for gcc build

---
 indra/llui/llui.cpp            | 2 +-
 indra/llui/llui.h              | 2 +-
 indra/llui/lluiimage.cpp       | 2 +-
 indra/llui/lluiimage.h         | 2 +-
 indra/llxuixml/llinitparam.cpp | 2 +-
 indra/llxuixml/llinitparam.h   | 6 +++---
 indra/llxuixml/lluicolor.cpp   | 2 +-
 indra/llxuixml/lluicolor.h     | 6 +++---
 8 files changed, 12 insertions(+), 12 deletions(-)

diff --git a/indra/llui/llui.cpp b/indra/llui/llui.cpp
index ec9220a9842..f2538578515 100644
--- a/indra/llui/llui.cpp
+++ b/indra/llui/llui.cpp
@@ -1918,7 +1918,7 @@ namespace LLInitParam
 		declare("blue", LLColor4::blue);
 	}
 
-	bool ParamCompare<const LLFontGL*, boost::false_type>::equals(const LLFontGL* a, const LLFontGL* b)
+	bool ParamCompare<const LLFontGL*, false>::equals(const LLFontGL* a, const LLFontGL* b)
 	{
 		return !(a->getFontDesc() < b->getFontDesc())
 			&& !(b->getFontDesc() < a->getFontDesc());
diff --git a/indra/llui/llui.h b/indra/llui/llui.h
index db18957a97f..6ab78ab3cd9 100644
--- a/indra/llui/llui.h
+++ b/indra/llui/llui.h
@@ -437,7 +437,7 @@ namespace LLInitParam
 	};
 
 	template<>
-	struct ParamCompare<const LLFontGL*, boost::false_type>
+	struct ParamCompare<const LLFontGL*, false>
 	{
 		static bool equals(const LLFontGL* a, const LLFontGL* b);
 	};
diff --git a/indra/llui/lluiimage.cpp b/indra/llui/lluiimage.cpp
index 51828e57311..6c1a32722f1 100644
--- a/indra/llui/lluiimage.cpp
+++ b/indra/llui/lluiimage.cpp
@@ -152,7 +152,7 @@ namespace LLInitParam
 	}
 
 	
-	bool ParamCompare<LLUIImage*, boost::false_type>::equals(
+	bool ParamCompare<LLUIImage*, false>::equals(
 		LLUIImage* const &a,
 		LLUIImage* const &b)
 	{
diff --git a/indra/llui/lluiimage.h b/indra/llui/lluiimage.h
index 9f505bea791..9d734bcfdf3 100644
--- a/indra/llui/lluiimage.h
+++ b/indra/llui/lluiimage.h
@@ -108,7 +108,7 @@ namespace LLInitParam
 	// Need custom comparison function for our test app, which only loads
 	// LLUIImage* as NULL.
 	template<>
-	struct ParamCompare<LLUIImage*, boost::false_type>
+	struct ParamCompare<LLUIImage*, false>
 	{
 		static bool equals(LLUIImage* const &a, LLUIImage* const &b);
 	};
diff --git a/indra/llxuixml/llinitparam.cpp b/indra/llxuixml/llinitparam.cpp
index 1abd411f373..6dd1f93baf2 100644
--- a/indra/llxuixml/llinitparam.cpp
+++ b/indra/llxuixml/llinitparam.cpp
@@ -500,7 +500,7 @@ namespace LLInitParam
 		return param_changed;
 	}
 
-	bool ParamCompare<LLSD, boost::false_type>::equals(const LLSD &a, const LLSD &b)
+	bool ParamCompare<LLSD, false>::equals(const LLSD &a, const LLSD &b)
 	{
 		return false;
 	}
diff --git a/indra/llxuixml/llinitparam.h b/indra/llxuixml/llinitparam.h
index 193d8c1f64a..b280dfdf63e 100644
--- a/indra/llxuixml/llinitparam.h
+++ b/indra/llxuixml/llinitparam.h
@@ -46,7 +46,7 @@
 
 namespace LLInitParam
 {
-	template <typename T, typename IS_BOOST_FUNCTION = boost::is_convertible<T, boost::function_base>::type >
+	template <typename T, bool IS_BOOST_FUNCTION = boost::is_convertible<T, boost::function_base>::value >
     struct ParamCompare 
 	{
     	static bool equals(const T &a, const T &b)
@@ -57,7 +57,7 @@ namespace LLInitParam
     
 	// boost function types are not comparable
 	template<typename T>
-	struct ParamCompare<T, boost::true_type>
+	struct ParamCompare<T, true>
 	{
 		static bool equals(const T&a, const T &b)
 		{
@@ -1818,7 +1818,7 @@ namespace LLInitParam
 	};
 
 	template<> 
-	struct ParamCompare<LLSD, boost::false_type>
+	struct ParamCompare<LLSD, false>
 	{
 		static bool equals(const LLSD &a, const LLSD &b);
 	};
diff --git a/indra/llxuixml/lluicolor.cpp b/indra/llxuixml/lluicolor.cpp
index 0065edb3094..856c05cf4af 100644
--- a/indra/llxuixml/lluicolor.cpp
+++ b/indra/llxuixml/lluicolor.cpp
@@ -58,7 +58,7 @@ bool LLUIColor::isReference() const
 namespace LLInitParam
 {
 	// used to detect equivalence with default values on export
-	bool ParamCompare<LLUIColor, boost::false_type>::equals(const LLUIColor &a, const LLUIColor &b)
+	bool ParamCompare<LLUIColor, false>::equals(const LLUIColor &a, const LLUIColor &b)
 	{
 		// do not detect value equivalence, treat pointers to colors as distinct from color values
 		return (a.mColorPtr == NULL && b.mColorPtr == NULL ? a.mColor == b.mColor : a.mColorPtr == b.mColorPtr);
diff --git a/indra/llxuixml/lluicolor.h b/indra/llxuixml/lluicolor.h
index aff81a695d8..fb9c6b91610 100644
--- a/indra/llxuixml/lluicolor.h
+++ b/indra/llxuixml/lluicolor.h
@@ -15,7 +15,7 @@
 
 namespace LLInitParam
 {
-	template<typename T, typename IS_BOOST_FUNCTION>
+	template<typename T, bool>
 	struct ParamCompare;
 }
 
@@ -37,7 +37,7 @@ class LLUIColor
 	bool isReference() const;
 
 private:
-	friend struct LLInitParam::ParamCompare<LLUIColor, boost::false_type>;
+	friend struct LLInitParam::ParamCompare<LLUIColor, false>;
 
 	const LLColor4* mColorPtr;
 	LLColor4 mColor;
@@ -46,7 +46,7 @@ class LLUIColor
 namespace LLInitParam
 {
 	template<>
-	struct ParamCompare<class LLUIColor, boost::false_type>
+	struct ParamCompare<LLUIColor, false>
 	{
 		static bool equals(const class LLUIColor& a, const class LLUIColor& b);
 	};
-- 
GitLab