let prop_const mem = function
    | CInt64(k,_,_) ->
        if My_bigint.equal k My_bigint.zero then F.p_false else F.p_true
    | CChr c ->
        if c ='0' then F.p_false else F.p_true
    | CReal(f,_,_) ->
        if f = 0.0 then F.p_false else F.p_true
    | CEnum e ->
        !prop_rec mem e.eival
    | CWStr _ -> F.p_false (* pointer to constant string is non-null *)
    | CStr  _ -> F.p_false