diff --git a/tools/llvm2cpp/CppWriter.cpp b/tools/llvm2cpp/CppWriter.cpp
index b0eb120..313db9b 100644
--- a/tools/llvm2cpp/CppWriter.cpp
+++ b/tools/llvm2cpp/CppWriter.cpp
@@ -668,12 +668,13 @@
     // Skip variables and functions, we emit them elsewhere
     return;
   }
-  if (const ConstantBool *CB = dyn_cast<ConstantBool>(CV)) {
-    Out << "ConstantBool* " << constName << " = ConstantBool::get(" 
-        << (CB->getValue() ? "true" : "false") << ");";
-  } else if (const ConstantInt *CI = dyn_cast<ConstantInt>(CV)) {
-    Out << "ConstantInt* " << constName << " = ConstantInt::get(" 
-        << typeName << ", " << CI->getZExtValue() << ");";
+  if (const ConstantInt *CI = dyn_cast<ConstantInt>(CV)) {
+    if (CI->getType() == Type::BoolTy)
+      Out << "ConstantInt* " << constName << " = ConstantInt::get(" 
+          << (CI->getBoolValue() ? "true" : "false") << ");";
+    else
+      Out << "ConstantInt* " << constName << " = ConstantInt::get(" 
+          << typeName << ", " << CI->getZExtValue() << ");";
   } else if (isa<ConstantAggregateZero>(CV)) {
     Out << "ConstantAggregateZero* " << constName 
         << " = ConstantAggregateZero::get(" << typeName << ");";
