diff --git a/lib/py/src/ext/binary.cpp b/lib/py/src/ext/binary.cpp
index a83899f..85d8d92 100644
--- a/lib/py/src/ext/binary.cpp
+++ b/lib/py/src/ext/binary.cpp
@@ -27,9 +27,6 @@
   if (!readByte(b)) {
     return false;
   }
-  if (b == -1) {
-    return false;
-  }
   type = static_cast<TType>(b);
   if (type == T_STOP) {
     return true;
diff --git a/lib/py/src/ext/protocol.tcc b/lib/py/src/ext/protocol.tcc
index 554ba6e..9c25841 100644
--- a/lib/py/src/ext/protocol.tcc
+++ b/lib/py/src/ext/protocol.tcc
@@ -101,7 +101,7 @@
     return false;
   }
   if (len != size) {
-    PyErr_Format(PyExc_EOFError, "write length mismatch: expected %d got %d", size, len);
+    PyErr_Format(PyExc_EOFError, "write length mismatch: expected %lu got %d", size, len);
     return false;
   }
   return true;
@@ -246,11 +246,11 @@
 template <typename Impl>
 bool ProtocolBase<Impl>::checkLengthLimit(int32_t len, long limit) {
   if (len < 0) {
-    PyErr_Format(PyExc_OverflowError, "negative length: %d", limit);
+    PyErr_Format(PyExc_OverflowError, "negative length: %ld", limit);
     return false;
   }
   if (len > limit) {
-    PyErr_Format(PyExc_OverflowError, "size exceeded specified limit: %d", limit);
+    PyErr_Format(PyExc_OverflowError, "size exceeded specified limit: %ld", limit);
     return false;
   }
   return true;
diff --git a/lib/py/src/ext/types.h b/lib/py/src/ext/types.h
index 0dd5d96..fd0a197 100644
--- a/lib/py/src/ext/types.h
+++ b/lib/py/src/ext/types.h
@@ -53,6 +53,7 @@
 // Stolen out of TProtocol.h.
 // It would be a huge pain to have both get this from one place.
 enum TType {
+  T_INVALID = -1,
   T_STOP = 0,
   T_VOID = 1,
   T_BOOL = 2,
