diff options
author | Ted Kremenek <kremenek@apple.com> | 2008-06-17 03:11:08 +0000 |
---|---|---|
committer | Ted Kremenek <kremenek@apple.com> | 2008-06-17 03:11:08 +0000 |
commit | c6501dbc10ea73a6986efc2226fe68be59ba922e (patch) | |
tree | 6f53940f6890b0c2235b141358dd3341e4443728 /clang/lib/AST/ExprCXX.cpp | |
parent | 3dd77247111f360e3bd77a129a09c53b5355ea2e (diff) | |
download | bcm5719-llvm-c6501dbc10ea73a6986efc2226fe68be59ba922e.tar.gz bcm5719-llvm-c6501dbc10ea73a6986efc2226fe68be59ba922e.zip |
Fix more strict-aliasing warnings.
Fix indentation of class declarations in ExprCXX.h
llvm-svn: 52380
Diffstat (limited to 'clang/lib/AST/ExprCXX.cpp')
-rw-r--r-- | clang/lib/AST/ExprCXX.cpp | 16 |
1 files changed, 4 insertions, 12 deletions
diff --git a/clang/lib/AST/ExprCXX.cpp b/clang/lib/AST/ExprCXX.cpp index 323fdd67a17..60694381373 100644 --- a/clang/lib/AST/ExprCXX.cpp +++ b/clang/lib/AST/ExprCXX.cpp @@ -20,12 +20,8 @@ using namespace clang; // CXXCastExpr -Stmt::child_iterator CXXCastExpr::child_begin() { - return reinterpret_cast<Stmt**>(&Op); -} -Stmt::child_iterator CXXCastExpr::child_end() { - return reinterpret_cast<Stmt**>(&Op)+1; -} +Stmt::child_iterator CXXCastExpr::child_begin() { return &Op; } +Stmt::child_iterator CXXCastExpr::child_end() { return &Op+1; } // CXXBoolLiteralExpr Stmt::child_iterator CXXBoolLiteralExpr::child_begin() { @@ -36,14 +32,10 @@ Stmt::child_iterator CXXBoolLiteralExpr::child_end() { } // CXXThrowExpr -Stmt::child_iterator CXXThrowExpr::child_begin() { - return reinterpret_cast<Stmt**>(&Op); -} +Stmt::child_iterator CXXThrowExpr::child_begin() { return &Op; } Stmt::child_iterator CXXThrowExpr::child_end() { // If Op is 0, we are processing throw; which has no children. - if (Op == 0) - return reinterpret_cast<Stmt**>(&Op)+0; - return reinterpret_cast<Stmt**>(&Op)+1; + return Op ? &Op+1 : &Op; } // CXXDefaultArgExpr |