diff --git a/divine/vm/eval.hpp b/divine/vm/eval.hpp
index 5a64188a595d131e144d1836e383de3b10c7127c..abcf50114d6d24946a40f9fbd63fed4fb481f769 100644
--- a/divine/vm/eval.hpp
+++ b/divine/vm/eval.hpp
@@ -132,7 +132,7 @@ struct Eval
     using BoolV = value::Bool;
     /* TODO should be sizeof( int ) of the *bitcode*, not ours! */
     using IntV = value::Int< 8 * sizeof( int ), true >;
-    using CharV = value::Int< 1, false >;
+    using CharV = value::Int< 8, true >;
     using PtrIntV = vm::value::Int< _VM_PB_Full >;
 
     static_assert( Convertible< PointerV >::template Guard< IntV >::value, "" );