]> granicus.if.org Git - clang/commit
Synthesizing the definition of an implicit member is an AST modification, so notify...
authorSebastian Redl <sebastian.redl@getdesigned.at>
Sun, 24 Apr 2011 16:28:06 +0000 (16:28 +0000)
committerSebastian Redl <sebastian.redl@getdesigned.at>
Sun, 24 Apr 2011 16:28:06 +0000 (16:28 +0000)
commit58a2cd8c0d52e710cbcc57a67eac7b51b0b831c4
tree5a90a0576e259fe137f4af70496cc2cc0e980958
parent024e1c400ec1d23dd76659395f87272da59a2cbd
Synthesizing the definition of an implicit member is an AST modification, so notify any mutation listeners of it. This fixes a crasher in chained PCH, where an implicit destructor in a PCH gets a definition in a chained PCH, which is then lost. However, any further use of the destructor would cause its definition to be regenerated in the final file, hiding the bug.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@130103 91177308-0d34-0410-b5e6-96231b3b80d8
include/clang/AST/ASTConsumer.h
include/clang/AST/ASTMutationListener.h
include/clang/Sema/Sema.h
include/clang/Serialization/ASTWriter.h
lib/Frontend/MultiplexConsumer.cpp
lib/Sema/Sema.cpp
lib/Sema/SemaDeclCXX.cpp
lib/Serialization/ASTWriter.cpp
test/PCH/chain-implicit-definition.cpp [new file with mode: 0644]