let expr_const mem = function
| CInt64(k,ik,_) -> M.V_int(Ctypes.c_int ik,F.e_icst (Int64.to_string k))
| CChr c -> M.V_int(Ctypes.c_char(),
F.e_icst (string_of_int (Char.code c)))
| CReal(f,fk,_) -> M.V_float(Ctypes.c_float fk, F.e_float f)
| CEnum e -> !expr_rec mem e.eival
| CWStr _ ->
WpLog.not_yet_implemented "wide character string constant"
| CStr s ->
WpLog.not_yet_implemented "character string constant (%S)" s