diff --git a/indra/llcorehttp/tests/test_httpstatus.hpp b/indra/llcorehttp/tests/test_httpstatus.hpp
index 4502d32fe1f0f6c9eb96bb3bebca02442aab3be8..10cda799e76f49bcd89e25486e6a04002f033f93 100644
--- a/indra/llcorehttp/tests/test_httpstatus.hpp
+++ b/indra/llcorehttp/tests/test_httpstatus.hpp
@@ -244,7 +244,11 @@ void HttpStatusTestObjectType::test<7>()
 	HttpStatus status(404);
 	std::string msg = status.toHex();
 	// std::cout << "Result:  " << msg << std::endl;
-	ensure(msg == "01940001");
+#if ADDRESS_SIZE == 32
+	ensure_equals(msg, "01940001");
+#else
+	ensure_equals(msg, "19400000001");
+#endif
 }
 
 
diff --git a/indra/llrender/llvertexbuffer.cpp b/indra/llrender/llvertexbuffer.cpp
index 0fae600a90b7e0e8e743e78377b8678f026ddcb0..c09d614c3c93ac9596804957d8ca9f3e622760fb 100644
--- a/indra/llrender/llvertexbuffer.cpp
+++ b/indra/llrender/llvertexbuffer.cpp
@@ -1436,13 +1436,22 @@ void LLVertexBuffer::setupVertexArray()
 				//glVertexattribIPointer requires GLSL 1.30 or later
 				if (gGLManager.mGLSLVersionMajor > 1 || gGLManager.mGLSLVersionMinor >= 30)
 				{
-					glVertexAttribIPointer(i, attrib_size[i], attrib_type[i], sTypeSize[i], (void*) mOffsets[i]); 
+					glVertexAttribIPointer(i, attrib_size[i], attrib_type[i], sTypeSize[i], (const GLvoid*) mOffsets[i]); 
 				}
 #endif
 			}
 			else
 			{
-				glVertexAttribPointerARB(i, attrib_size[i], attrib_type[i], attrib_normalized[i], sTypeSize[i], (void*) mOffsets[i]); 
+				// nat 2016-12-16: With 64-bit clang compile, the compiler
+				// produces an error if we simply cast mOffsets[i] -- an S32
+				// -- to (GLvoid *), the type of the parameter. It correctly
+				// points out that there's no way an S32 could fit a real
+				// pointer value. Ruslan asserts that in this case the last
+				// param is interpreted as an array data offset within the VBO
+				// rather than as an actual pointer, so it's okay.
+				glVertexAttribPointerARB(i, attrib_size[i], attrib_type[i],
+										 attrib_normalized[i], sTypeSize[i],
+										 reinterpret_cast<GLvoid*>(mOffsets[i])); 
 			}
 		}
 		else
diff --git a/indra/llui/llstatgraph.h b/indra/llui/llstatgraph.h
index f381e92a4dba1364d5e269611707c307699d1ed2..ba7cfc5d10fa52c54fc7c3b0e84692d8fa2c30e8 100644
--- a/indra/llui/llstatgraph.h
+++ b/indra/llui/llstatgraph.h
@@ -126,7 +126,7 @@ class LLStatGraph : public LLView
 
 		F32 mValue;
 		LLUIColor mColor;
-		bool operator <(const Threshold& other)
+		bool operator <(const Threshold& other) const
 		{
 			return mValue < other.mValue;
 		}