From cbbf85543283e66935edaee86a7d9e929a8bd0b2 Mon Sep 17 00:00:00 2001 From: Zhongxing Xu Date: Mon, 11 Jan 2010 06:52:53 +0000 Subject: Enhance SVals::getAsRegion: get the region that is converted to an integer. This with previous patch fixes a OSAtomic test case. llvm-svn: 93146 --- clang/lib/Analysis/SVals.cpp | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'clang/lib') diff --git a/clang/lib/Analysis/SVals.cpp b/clang/lib/Analysis/SVals.cpp index 9163b272527..fbdb73b0ef2 100644 --- a/clang/lib/Analysis/SVals.cpp +++ b/clang/lib/Analysis/SVals.cpp @@ -97,6 +97,10 @@ const MemRegion *SVal::getAsRegion() const { if (const loc::MemRegionVal *X = dyn_cast(this)) return X->getRegion(); + if (const nonloc::LocAsInteger *X = dyn_cast(this)) { + return X->getLoc().getAsRegion(); + } + return 0; } -- cgit v1.2.3