diff -ur poppler-0.22.2.orig/poppler/GfxState.cc poppler-0.22.2/poppler/GfxState.cc
--- poppler-0.22.2.orig/poppler/GfxState.cc	2013-02-20 21:09:05.000000000 +0100
+++ poppler-0.22.2/poppler/GfxState.cc	2013-03-12 09:42:59.000000000 +0100
@@ -3433,7 +3433,7 @@
 
   getParameterRange(&sMin, &sMax, xMin, yMin, xMax, yMax);
   upperBound = ctm->norm() * getDistance(sMin, sMax);
-  maxSize = ceil(upperBound);
+  maxSize = (int)ceil(upperBound);
   maxSize = std::max<int>(maxSize, 2);
 
   {
diff -ur poppler-0.22.2.orig/poppler/GfxState.h poppler-0.22.2/poppler/GfxState.h
--- poppler-0.22.2.orig/poppler/GfxState.h	2013-02-20 21:09:05.000000000 +0100
+++ poppler-0.22.2/poppler/GfxState.h	2013-03-12 09:42:59.000000000 +0100
@@ -101,7 +101,7 @@
 }
 
 static inline Guchar dblToByte(double x) {
-  return (x * 255.0);
+  return (Guchar)(x * 255.0);
 }
 
 static inline double byteToDbl(Guchar x) {
diff -ur poppler-0.22.2.orig/poppler/Hints.cc poppler-0.22.2/poppler/Hints.cc
--- poppler-0.22.2.orig/poppler/Hints.cc	2013-02-20 21:09:05.000000000 +0100
+++ poppler-0.22.2/poppler/Hints.cc	2013-03-12 09:42:59.000000000 +0100
@@ -415,7 +415,7 @@
 {
   Guint bit, bits;
 
-  if (n < 0) return -1;
+  if (n < 0) return (Guint)-1;
   if (n == 0) return 0;
 
   if (n == 1)
@@ -423,11 +423,11 @@
 
   bit = (readBit(str) << (n-1));
   if (bit == (Guint) -1)
-    return -1;
+    return (Guint)-1;
 
   bits = readBits(n-1, str);
   if (bits == (Guint) -1)
-    return -1;
+    return (Guint)-1;
 
   return bit | bits;
 }
diff -ur poppler-0.22.2.orig/poppler/Lexer.cc poppler-0.22.2/poppler/Lexer.cc
--- poppler-0.22.2.orig/poppler/Lexer.cc	2013-02-20 21:09:05.000000000 +0100
+++ poppler-0.22.2/poppler/Lexer.cc	2013-03-12 09:42:59.000000000 +0100
@@ -216,7 +216,7 @@
 	      overflownUnsignedInteger = gTrue;
 	      xf = xi * 10.0 + (c - '0');
 	    } else {
-	      xui = xi * 10.0 + (c - '0');
+	      xui = (unsigned int)(xi * 10.0 + (c - '0'));
 	    }
 	  } else {
 	    xi = xi * 10 + (c - '0');
diff -ur poppler-0.22.2.orig/poppler/Stream.cc poppler-0.22.2/poppler/Stream.cc
--- poppler-0.22.2.orig/poppler/Stream.cc	2013-03-08 16:38:39.000000000 +0100
+++ poppler-0.22.2/poppler/Stream.cc	2013-03-12 09:42:59.000000000 +0100
@@ -480,7 +480,7 @@
   Guchar *p;
  
   int readChars = str->doGetChars(inputLineSize, inputLine);
-  for ( ; readChars < inputLineSize; readChars++) inputLine[readChars] = EOF;
+  for ( ; readChars < inputLineSize; readChars++) inputLine[readChars] = (Guchar)EOF;
   if (nBits == 1) {
     p = inputLine;
     for (i = 0; i < nVals; i += 8) {
