diff options
| author | Douglas Gregor <dgregor@apple.com> | 2010-07-01 05:10:53 +0000 |
|---|---|---|
| committer | Douglas Gregor <dgregor@apple.com> | 2010-07-01 05:10:53 +0000 |
| commit | 957551609c0c551a180e81d04646c535604c9790 (patch) | |
| tree | 7d03f36e79065cd33b1f2a1ca8b483ad2d6fa826 /clang/lib/Sema/SemaDecl.cpp | |
| parent | 42b7ee15f5f7b1fa2d542ef772e45e0965427008 (diff) | |
| download | bcm5719-llvm-957551609c0c551a180e81d04646c535604c9790.tar.gz bcm5719-llvm-957551609c0c551a180e81d04646c535604c9790.zip | |
Reinstate fix for PR7526, which was failing because, now that we
aren't dropping all exception specifications on destructors, the
exception specifications on implicitly-declared destructors were
detected as being wrong (which they were).
Introduce logic to provide a proper exception-specification for
implicitly-declared destructors. This also fixes PR6972.
Note that the other implicitly-declared special member functions also
need to get exception-specifications. I'll deal with that in a
subsequent commit.
llvm-svn: 107385
Diffstat (limited to 'clang/lib/Sema/SemaDecl.cpp')
| -rw-r--r-- | clang/lib/Sema/SemaDecl.cpp | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/clang/lib/Sema/SemaDecl.cpp b/clang/lib/Sema/SemaDecl.cpp index ba84f7c2233..500d73eb9b4 100644 --- a/clang/lib/Sema/SemaDecl.cpp +++ b/clang/lib/Sema/SemaDecl.cpp @@ -3023,7 +3023,7 @@ Sema::ActOnFunctionDeclarator(Scope* S, Declarator& D, DeclContext* DC, } else if (Name.getNameKind() == DeclarationName::CXXDestructorName) { // This is a C++ destructor declaration. if (DC->isRecord()) { - R = CheckDestructorDeclarator(D, SC); + R = CheckDestructorDeclarator(D, R, SC); NewFD = CXXDestructorDecl::Create(Context, cast<CXXRecordDecl>(DC), |

