@@ -106,7 +106,7 @@ class SValBuilder {
106
106
// / \param CastTy -- QualType, which `V` shall be cast to.
107
107
// / \return SVal with simplified cast expression.
108
108
// / \note: Currently only support integral casts.
109
- SVal simplifySymbolCast (nonloc::SymbolVal V, QualType CastTy);
109
+ nonloc::SymbolVal simplifySymbolCast (nonloc::SymbolVal V, QualType CastTy);
110
110
111
111
public:
112
112
SValBuilder (llvm::BumpPtrAllocator &alloc, ASTContext &context,
@@ -340,17 +340,19 @@ class SValBuilder {
340
340
return nonloc::LocAsInteger (BasicVals.getPersistentSValWithData (loc, bits));
341
341
}
342
342
343
- NonLoc makeNonLoc (const SymExpr *lhs, BinaryOperator::Opcode op,
344
- const llvm::APSInt& rhs, QualType type);
343
+ nonloc::SymbolVal makeNonLoc (const SymExpr *lhs, BinaryOperator::Opcode op,
344
+ const llvm::APSInt & rhs, QualType type);
345
345
346
- NonLoc makeNonLoc (const llvm::APSInt& rhs, BinaryOperator::Opcode op,
347
- const SymExpr *lhs, QualType type);
346
+ nonloc::SymbolVal makeNonLoc (const llvm::APSInt &rhs,
347
+ BinaryOperator::Opcode op, const SymExpr *lhs,
348
+ QualType type);
348
349
349
- NonLoc makeNonLoc (const SymExpr *lhs, BinaryOperator::Opcode op,
350
- const SymExpr *rhs, QualType type);
350
+ nonloc::SymbolVal makeNonLoc (const SymExpr *lhs, BinaryOperator::Opcode op,
351
+ const SymExpr *rhs, QualType type);
351
352
352
353
// / Create a NonLoc value for cast.
353
- NonLoc makeNonLoc (const SymExpr *operand, QualType fromTy, QualType toTy);
354
+ nonloc::SymbolVal makeNonLoc (const SymExpr *operand, QualType fromTy,
355
+ QualType toTy);
354
356
355
357
nonloc::ConcreteInt makeTruthVal (bool b, QualType type) {
356
358
return nonloc::ConcreteInt (BasicVals.getTruthValue (b, type));
@@ -363,7 +365,7 @@ class SValBuilder {
363
365
// / Create NULL pointer, with proper pointer bit-width for given address
364
366
// / space.
365
367
// / \param type pointer type.
366
- Loc makeNullWithType (QualType type) {
368
+ loc::ConcreteInt makeNullWithType (QualType type) {
367
369
// We cannot use the `isAnyPointerType()`.
368
370
assert ((type->isPointerType () || type->isObjCObjectPointerType () ||
369
371
type->isBlockPointerType () || type->isNullPtrType () ||
@@ -379,19 +381,19 @@ class SValBuilder {
379
381
return loc::ConcreteInt (BasicVals.getZeroWithTypeSize (type));
380
382
}
381
383
382
- Loc makeLoc (SymbolRef sym) {
384
+ loc::MemRegionVal makeLoc (SymbolRef sym) {
383
385
return loc::MemRegionVal (MemMgr.getSymbolicRegion (sym));
384
386
}
385
387
386
- Loc makeLoc (const MemRegion* region) {
388
+ loc::MemRegionVal makeLoc (const MemRegion * region) {
387
389
return loc::MemRegionVal (region);
388
390
}
389
391
390
- Loc makeLoc (const AddrLabelExpr *expr) {
392
+ loc::GotoLabel makeLoc (const AddrLabelExpr *expr) {
391
393
return loc::GotoLabel (expr->getLabel ());
392
394
}
393
395
394
- Loc makeLoc (const llvm::APSInt& integer) {
396
+ loc::ConcreteInt makeLoc (const llvm::APSInt & integer) {
395
397
return loc::ConcreteInt (BasicVals.getValue (integer));
396
398
}
397
399
@@ -402,7 +404,7 @@ class SValBuilder {
402
404
// / Make an SVal that represents the given symbol. This follows the convention
403
405
// / of representing Loc-type symbols (symbolic pointers and references)
404
406
// / as Loc values wrapping the symbol rather than as plain symbol values.
405
- SVal makeSymbolVal (SymbolRef Sym) {
407
+ DefinedSVal makeSymbolVal (SymbolRef Sym) {
406
408
if (Loc::isLocType (Sym->getType ()))
407
409
return makeLoc (Sym);
408
410
return nonloc::SymbolVal (Sym);
0 commit comments