aboutsummaryrefslogtreecommitdiff
path: root/Analysis/UninitializedValues.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'Analysis/UninitializedValues.cpp')
-rw-r--r--Analysis/UninitializedValues.cpp16
1 files changed, 13 insertions, 3 deletions
diff --git a/Analysis/UninitializedValues.cpp b/Analysis/UninitializedValues.cpp
index aec3197279..9651814b02 100644
--- a/Analysis/UninitializedValues.cpp
+++ b/Analysis/UninitializedValues.cpp
@@ -136,9 +136,19 @@ bool TransferFuncs::VisitCallExpr(CallExpr* C) {
}
bool TransferFuncs::VisitUnaryOperator(UnaryOperator* U) {
- if (U->getOpcode() == UnaryOperator::AddrOf)
- if (BlockVarDecl* VD = FindBlockVarDecl(U->getSubExpr()))
- return V(VD,AD) = Initialized;
+ switch (U->getOpcode()) {
+ case UnaryOperator::AddrOf:
+ if (BlockVarDecl* VD = FindBlockVarDecl(U->getSubExpr()))
+ return V(VD,AD) = Initialized;
+
+ break;
+
+ case UnaryOperator::SizeOf:
+ return Initialized;
+
+ default:
+ break;
+ }
return Visit(U->getSubExpr());
}