diff --git a/lib/CodeGen/AsmPrinter/AsmPrinter.cpp b/lib/CodeGen/AsmPrinter/AsmPrinter.cpp
index 5085fd4bdab..50cd24ba822 100644
--- a/lib/CodeGen/AsmPrinter/AsmPrinter.cpp
+++ b/lib/CodeGen/AsmPrinter/AsmPrinter.cpp
@@ -681,7 +681,7 @@ static void printStringChar(raw_ostream &O, char C) {
     O << "\\\"";
   } else if (C == '\\') {
     O << "\\\\";
-  } else if (isprint(C)) {
+  } else if (isprint((unsigned char)C)) {
     O << C;
   } else {
     switch(C) {