]> granicus.if.org Git - clang/commit
Don't mark record decls invalid when one of its methods is invalid, PR18284.
authorNico Weber <nicolasweber@gmx.de>
Sat, 21 Dec 2013 00:49:51 +0000 (00:49 +0000)
committerNico Weber <nicolasweber@gmx.de>
Sat, 21 Dec 2013 00:49:51 +0000 (00:49 +0000)
commitfe0f2e11ea73c0ea66370de8c44849108541acfd
treecaf3495e57f3d578937888e786b17832ab001689
parent2a50f239a90d670b3911cae9024b363cbfae87cc
Don't mark record decls invalid when one of its methods is invalid, PR18284.

Without this patch, record decls with invalid out-of-line method delcs would
sometimes be marked invalid, but not always.  With this patch, they are
consistently never marked invalid.

(The code to do this was added in
http://lists.cs.uiuc.edu/pipermail/cfe-commits/Week-of-Mon-20100809/033154.html
, but the test from that revision is still passing.)

As far as I can tell, this was the only place where a class was marked invalid
after its definition was complete.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@197848 91177308-0d34-0410-b5e6-96231b3b80d8
lib/Sema/SemaDecl.cpp
test/SemaCXX/constructor-initializer.cpp
test/SemaCXX/pr13394-crash-on-invalid.cpp
test/SemaCXX/pr18284-crash-on-invalid.cpp [new file with mode: 0644]