-
Notifications
You must be signed in to change notification settings - Fork 52
*p and p[0] are treated differently #10
Comments
thanks for the report! that's an unfortunate side effect of the len vs safe theory. because safe(p) is implicit, the prover knows *p is fine, a quick fix would be assert( = (safe(x) (> len(x) 0) ) but this slows down the prover dramatically i'd prefer to not fix this until deref is correctly implemented. it actually needs to check len() as well because you might cast to a different pointer size and then deref. that again isn't implemented yet because i haven't found a good way yet to get target pointer sizes. the current prover VM just assumes 64bit. |
Does |
yes, but the prepro is unavailable to zz. One leasson learned from rust is that zz will never make assumptions about your target build system, so it cannot possibly know how to call your c compiler with the correct flags for your target. the options are pretty much
|
Well, you can shell-out to the target compiler (would need to be configured) with I guess 2 could also be a good option. |
actually, this is fixed, isnt it? |
The text was updated successfully, but these errors were encountered: