From f5c5e0773ee722e8489dbaf5d5907414e02c1e7a Mon Sep 17 00:00:00 2001 From: Dan Gohman Date: Fri, 15 Oct 2010 17:52:03 +0000 Subject: Add a comment about odd "signed char" incompatibility between C++ and C. llvm-svn: 116593 --- clang/lib/CodeGen/CodeGenTBAA.cpp | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) (limited to 'clang/lib/CodeGen/CodeGenTBAA.cpp') diff --git a/clang/lib/CodeGen/CodeGenTBAA.cpp b/clang/lib/CodeGen/CodeGenTBAA.cpp index ed2b13f11cc..f9082fc9170 100644 --- a/clang/lib/CodeGen/CodeGenTBAA.cpp +++ b/clang/lib/CodeGen/CodeGenTBAA.cpp @@ -51,7 +51,11 @@ CodeGenTBAA::getTBAAInfo(QualType QTy) { // For now, just emit a very minimal tree. if (const BuiltinType *BTy = dyn_cast(Ty)) { switch (BTy->getKind()) { - // Charactar types are special and can alias anything. + // Character types are special and can alias anything. + // In C++, this technically only includes "char" and "unsigned char", + // and not "signed char". In C, it includes all three. For now, + // the risk of exploting this detail in C++ seems likely to outweigh + // the benefit. case BuiltinType::Char_U: case BuiltinType::Char_S: case BuiltinType::UChar: -- cgit v1.2.3