diff --git a/indra/llwindow/llopenglview-objc.mm b/indra/llwindow/llopenglview-objc.mm
index 074f18900a89eb32a792494e57fbb2217d45ed49..fd6be7d272ed0f4e71056af3a579b4fba072aa58 100644
--- a/indra/llwindow/llopenglview-objc.mm
+++ b/indra/llwindow/llopenglview-objc.mm
@@ -542,9 +542,9 @@ attributedStringInfo getSegments(NSAttributedString *str)
     {
         if (mMarkedTextAllowed)
         {
-            int replacement[2] = {
-                static_cast<int>(replacementRange.location),
-                static_cast<int>(replacementRange.length)
+            unsigned int replacement[2] = {
+                static_cast<unsigned int>(replacementRange.location),
+                static_cast<unsigned int>(replacementRange.length)
             };
             
             unichar text[[aString length]];
diff --git a/indra/llwindow/llwindowmacosx-objc.h b/indra/llwindow/llwindowmacosx-objc.h
index cef90b3451875282a18e44f07b329f9aada5fd22..9af0cd2979505ac1814f0bae4f83e79aae4ed0c1 100755
--- a/indra/llwindow/llwindowmacosx-objc.h
+++ b/indra/llwindow/llwindowmacosx-objc.h
@@ -142,7 +142,7 @@ void updatePreeditor(unsigned short *str);
 void setPreeditMarkedRange(int position, int length);
 void resetPreedit();
 int wstring_length(const std::basic_string<wchar_t> & wstr, const int woffset, const int utf16_length, int *unaligned);
-void setMarkedText(unsigned short *text, int *replacementRange, long text_len, attributedStringInfo segments);
+void setMarkedText(unsigned short *text, unsigned int *replacementRange, long text_len, attributedStringInfo segments);
 void getPreeditLocation(float *location, unsigned int length);
 void allowDirectMarkedTextInput(bool allow, GLViewRef glView);
 
diff --git a/indra/llwindow/llwindowmacosx.cpp b/indra/llwindow/llwindowmacosx.cpp
index f5300d65adacbeef4cbfeae11dfe2ba9960dc425..02d1b16352abb5f6badb2753b37b3e0c4bbe99cd 100755
--- a/indra/llwindow/llwindowmacosx.cpp
+++ b/indra/llwindow/llwindowmacosx.cpp
@@ -478,7 +478,7 @@ void resetPreedit()
 
 // For reasons of convenience, handle IME updates here.
 // This largely mirrors the old implementation, only sans the carbon parameters.
-void setMarkedText(unsigned short *unitext, int *replacementRange, long text_len, attributedStringInfo segments)
+void setMarkedText(unsigned short *unitext, unsigned int *replacementRange, long text_len, attributedStringInfo segments)
 {
 	if (gWindowImplementation->getPreeditor())
 	{