[cfe-commits] [PATCH] VisitInitListExpr
Ted Kremenek
kremenek at apple.com
Wed Oct 29 21:35:49 PDT 2008
On Oct 29, 2008, at 9:29 PM, Zhongxing Xu wrote:
>
>
> On Thu, Oct 30, 2008 at 12:25 PM, Ted Kremenek <kremenek at apple.com>
> wrote:
>
> On Oct 29, 2008, at 9:17 PM, Zhongxing Xu wrote:
>
> if (Loc::isLocType(T) || T->isIntegerType()) {
> assert (E->getNumInits() == 1);
> NodeSet Tmp;
> Expr* Init = E->getInit(0);
> Visit(Tmp, Init, Pred, state);
> for (NodeSet::iterator I=Tmp.begin(), EI=Tmp.end(); I!+EI; ++I)
> MakeNode(Dst, E, *I, SetSVal(state, Ex, GetSVal(state, Init)));
> }
>
>
> Great. Added to my patch.
>
> I just realized that the condition if(Loc::is:LocType(T) || T-
> >isIntegerType()) is probably too strict, as this will work fine on
> any scalar value (or even a ComplexType).
>
> Other than unions, structs, and arrays, are there any other
> "compound" cases? If so, we can just drop the "if" here.
>
> I don't know. But I prefer to keep the 'if' and the assertion for a
> while. Let's test the code and look at what strange things could
> come out.
Sounds reasonable!
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/cfe-commits/attachments/20081029/b6acad71/attachment.html>
More information about the cfe-commits
mailing list