<div class="gmail_quote"><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;"><br>
==============================================================================<br>
--- cfe/trunk/lib/Analysis/MemRegion.cpp (original)<br>
+++ cfe/trunk/lib/Analysis/MemRegion.cpp Thu Jan 29 18:08:43 2009<br>
@@ -114,8 +114,9 @@<br>
if (ArrayType* AT = dyn_cast<ArrayType>(T.getTypePtr()))<br>
return AT->getElementType();<br>
<br>
- PointerType* PtrT = cast<PointerType>(T.getTypePtr());<br>
- return C.getCanonicalType(PtrT->getPointeeType());<br>
+ // If the RValueType of the array region isn't an ArrayType, then essentially<br>
+ // the element's<br>
+ return T;<br>
}<br>
</blockquote><div><br>Hi Ted,<br><br>This perhaps does not work for code like:<br><br>char* p = (char*) alloca(4);<br>char* c = p[1];<br><br>The array region of element region p[1] is an AnonTypedRegion, whose type is 'pointer to char'.<br>
</div></div><br>