diff options
author | Richard Trieu <rtrieu@google.com> | 2013-03-26 03:41:40 +0000 |
---|---|---|
committer | Richard Trieu <rtrieu@google.com> | 2013-03-26 03:41:40 +0000 |
commit | 8fbd91d44586015f1285343d21a4e4f2b93cc3a6 (patch) | |
tree | ae3e2c4bc24c6aec7ed229479dc9712f66f9662c /clang/lib/Sema/SemaDecl.cpp | |
parent | 9093e15066cad10e47724c3070c55b31b2ef283b (diff) | |
download | bcm5719-llvm-8fbd91d44586015f1285343d21a4e4f2b93cc3a6.tar.gz bcm5719-llvm-8fbd91d44586015f1285343d21a4e4f2b93cc3a6.zip |
Handle CXXOperatorCallExpr when checking self referrnce during initialization of
class types.
llvm-svn: 177987
Diffstat (limited to 'clang/lib/Sema/SemaDecl.cpp')
-rw-r--r-- | clang/lib/Sema/SemaDecl.cpp | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/clang/lib/Sema/SemaDecl.cpp b/clang/lib/Sema/SemaDecl.cpp index cb05bb0099e..9261df559e9 100644 --- a/clang/lib/Sema/SemaDecl.cpp +++ b/clang/lib/Sema/SemaDecl.cpp @@ -7097,6 +7097,14 @@ namespace { Visit(Base); } + void VisitCXXOperatorCallExpr(CXXOperatorCallExpr *E) { + if (E->getNumArgs() > 0) + if (DeclRefExpr *DRE = dyn_cast<DeclRefExpr>(E->getArg(0))) + HandleDeclRefExpr(DRE); + + Inherited::VisitCXXOperatorCallExpr(E); + } + void VisitUnaryOperator(UnaryOperator *E) { // For POD record types, addresses of its own members are well-defined. if (E->getOpcode() == UO_AddrOf && isRecordType && |