summaryrefslogtreecommitdiffstats
path: root/clang/lib/Sema
diff options
context:
space:
mode:
authorDouglas Gregor <dgregor@apple.com>2010-05-23 19:43:23 +0000
committerDouglas Gregor <dgregor@apple.com>2010-05-23 19:43:23 +0000
commit2788782164db1a55d40f18a43e11e58904aeb836 (patch)
treed4fb369ac8fea74ff802629dd39606bbd8e7f9d6 /clang/lib/Sema
parentc69978f7662cb4cf576a7d3a6d4d0d112d2fdba2 (diff)
downloadbcm5719-llvm-2788782164db1a55d40f18a43e11e58904aeb836.tar.gz
bcm5719-llvm-2788782164db1a55d40f18a43e11e58904aeb836.zip
Complain about sizeof(overloaded function) rather than crashing.
llvm-svn: 104470
Diffstat (limited to 'clang/lib/Sema')
-rw-r--r--clang/lib/Sema/SemaExpr.cpp6
1 files changed, 6 insertions, 0 deletions
diff --git a/clang/lib/Sema/SemaExpr.cpp b/clang/lib/Sema/SemaExpr.cpp
index 0c150ffeed5..5e2e7325725 100644
--- a/clang/lib/Sema/SemaExpr.cpp
+++ b/clang/lib/Sema/SemaExpr.cpp
@@ -2027,6 +2027,12 @@ bool Sema::CheckSizeOfAlignOfOperand(QualType exprType,
return true;
}
+ if (Context.hasSameUnqualifiedType(exprType, Context.OverloadTy)) {
+ Diag(OpLoc, diag::err_sizeof_alignof_overloaded_function_type)
+ << !isSizeof << ExprRange;
+ return true;
+ }
+
return false;
}
OpenPOWER on IntegriCloud