Remove need to disable MSVC warning 4800
diff --git a/api_test/CMakeLists.txt b/api_test/CMakeLists.txt
index 7489388..f7dff55 100644
--- a/api_test/CMakeLists.txt
+++ b/api_test/CMakeLists.txt
@@ -18,7 +18,7 @@
   else()
     set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} /W4")
   endif()
-  set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} /wd4127 /wd4244 /wd4267 /wd4706 /wd4800 /D_CRT_SECURE_NO_WARNINGS")
+  set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} /wd4127 /wd4244 /wd4267 /wd4706 /D_CRT_SECURE_NO_WARNINGS")
   set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} /TP")
 elseif(CMAKE_COMPILER_IS_GNUCC OR "${CMAKE_C_COMPILER_ID}" STREQUAL "Clang")
   set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wall -Wextra -std=c99 -pedantic")
diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
index 67d7b72..ecdd016 100644
--- a/src/CMakeLists.txt
+++ b/src/CMakeLists.txt
@@ -155,7 +155,7 @@
   else()
     set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} /W4")
   endif()
-  set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} /wd4127 /wd4244 /wd4267 /wd4706 /wd4800 /D_CRT_SECURE_NO_WARNINGS")
+  set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} /wd4127 /wd4244 /wd4267 /wd4706 /D_CRT_SECURE_NO_WARNINGS")
 elseif(CMAKE_COMPILER_IS_GNUCC OR "${CMAKE_CXX_COMPILER_ID}" STREQUAL "Clang")
   set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wall -Wextra -std=c99 -pedantic")
 endif()
diff --git a/src/inlines.c b/src/inlines.c
index f8a2cfc..3275ddd 100755
--- a/src/inlines.c
+++ b/src/inlines.c
@@ -1034,13 +1034,13 @@
   case '_':
   case '\'':
   case '"':
-    new_inl = handle_delim(subj, c, options & CMARK_OPT_SMART);
+    new_inl = handle_delim(subj, c, (options & CMARK_OPT_SMART) != 0);
     break;
   case '-':
-    new_inl = handle_hyphen(subj, options & CMARK_OPT_SMART);
+    new_inl = handle_hyphen(subj, (options & CMARK_OPT_SMART) != 0);
     break;
   case '.':
-    new_inl = handle_period(subj, options & CMARK_OPT_SMART);
+    new_inl = handle_period(subj, (options & CMARK_OPT_SMART) != 0);
     break;
   case '[':
     advance(subj);
diff --git a/src/iterator.c b/src/iterator.c
index 81b6f48..19dfff8 100644
--- a/src/iterator.c
+++ b/src/iterator.c
@@ -31,7 +31,7 @@
 void cmark_iter_free(cmark_iter *iter) { free(iter); }
 
 static bool S_is_leaf(cmark_node *node) {
-  return (1 << node->type) & S_leaf_mask;
+  return ((1 << node->type) & S_leaf_mask) != 0;
 }
 
 cmark_event_type cmark_iter_next(cmark_iter *iter) {
diff --git a/src/node.c b/src/node.c
index ad12d63..c5f4553 100644
--- a/src/node.c
+++ b/src/node.c
@@ -426,7 +426,7 @@
   }
 
   if (node->type == CMARK_NODE_LIST) {
-    node->as.list.tight = tight;
+    node->as.list.tight = tight == 1;
     return 1;
   } else {
     return 0;