[cfe-commits] [PATCH] Fix for PR7218, and analyzer support for calloc()

Ted Kremenek kremenek at apple.com
Sun May 30 15:08:08 PDT 2010


On May 30, 2010, at 2:51 PM, Ted Kremenek wrote:

> 
> 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

Correction: SymbolicRegions don't have DIRECT bindings.



More information about the cfe-commits mailing list