From: Sebastian Redl Date: Mon, 26 Jan 2009 19:54:12 +0000 (+0000) Subject: Correct size assumption; fixes a crash on amd64. X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=1be3da51d26b4ee95a46c21f48eba5c5caa4b1b0;p=clang Correct size assumption; fixes a crash on amd64. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@63031 91177308-0d34-0410-b5e6-96231b3b80d8 --- diff --git a/lib/Analysis/RegionStore.cpp b/lib/Analysis/RegionStore.cpp index f519d4d1cd..e50b0abb61 100644 --- a/lib/Analysis/RegionStore.cpp +++ b/lib/Analysis/RegionStore.cpp @@ -888,7 +888,8 @@ const GRState* RegionStoreManager::BindArray(const GRState* St, ConstantArrayType* CAT = cast(T.getTypePtr()); llvm::APSInt Size(CAT->getSize(), false); - llvm::APSInt i = getBasicVals().getZeroWithPtrWidth(false); + llvm::APSInt i = getBasicVals().getValue(0, Size.getBitWidth(), + Size.isUnsigned()); // Check if the init expr is a StringLiteral. if (isa(Init)) {