[cfe-commits] [PATCH] Fix for PR7218, and analyzer support for calloc()
Ted Kremenek
kremenek at apple.com
Sun May 30 14:51:50 PDT 2010
On May 30, 2010, at 12:46 AM, Jordy Rose wrote:
> Binding a symbolic region whose type is a reference shows up when the
> reference is an argument, like so:
>
> char t3 (char& r) {
> r = 'c';
> if (r) return r;
> return '0';
> }
>
> The reason for the SymbolicRegion section in canHaveDirectBinding(),
> though, was originally more about having a way to set default values by
> taking advantages of a fact about SymbolicRegions (if you're accessing them
> directly, it's either *p or a reference, or an explicit call to Bind()),
> not enforcing a rule.
Hi Jordy,
A fundamental invariant in the memory region design is that symbolic regions don't have bindings since they represent typeless blobs of memory. All bindings need to be done via ElementRegions or FieldRegions layered on top of them. Changing this would subtly break many things. The ElementRegion design allows us to express all bindings as being typed.
Ted
More information about the cfe-commits
mailing list