]> granicus.if.org Git - clang/commit
Use CXXPseudoDestructorExpr as the stored representation for dependent
authorDouglas Gregor <dgregor@apple.com>
Thu, 25 Feb 2010 01:56:36 +0000 (01:56 +0000)
committerDouglas Gregor <dgregor@apple.com>
Thu, 25 Feb 2010 01:56:36 +0000 (01:56 +0000)
commita2e7dd2f4a50d835351153aee568d35ccc986310
tree9b54d49904946f8b023ba4851bbc68194428f617
parentb1bdc6232d7b4d8574b5436982435ad57f429a91
Use CXXPseudoDestructorExpr as the stored representation for dependent
expressions that look like pseudo-destructors, e.g.,

  p->T::~T()

where p has dependent type.

At template instantiate time, we determine whether we actually have a
pseudo-destructor or a member access, and funnel down to the
appropriate routine in Sema.

Fixes PR6380.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@97092 91177308-0d34-0410-b5e6-96231b3b80d8
include/clang/AST/ExprCXX.h
lib/AST/ExprCXX.cpp
lib/AST/StmtPrinter.cpp
lib/Sema/Sema.h
lib/Sema/SemaExprCXX.cpp
lib/Sema/TreeTransform.h
test/SemaTemplate/destructor-template.cpp
test/SemaTemplate/member-access-expr.cpp