Sometimes the debug information includes artifically-

generated special member functions (constructors,
destructors, etc.) for classes that don't really have
them.  We needed to mark these as artificial to reflect
the debug information; this bug does that for
constructors and destructors.

The "etc." case (certain assignment operators, mostly)
remains to be fixed.

llvm-svn: 143526
This commit is contained in:
Sean Callanan
2011-11-02 01:38:59 +00:00
parent 800f223b12
commit dbb583992a
4 changed files with 53 additions and 28 deletions

View File

@@ -3017,6 +3017,7 @@ ClangExpressionDeclMap::AddOneType(NameSearchContext &context,
const bool is_inline = false;
const bool is_explicit = false;
const bool is_attr_used = false;
const bool is_artificial = false;
ClangASTContext::AddMethodToCXXRecordType (parser_ast_context,
copied_type,
@@ -3027,7 +3028,8 @@ ClangExpressionDeclMap::AddOneType(NameSearchContext &context,
is_static,
is_inline,
is_explicit,
is_attr_used);
is_attr_used,
is_artificial);
}
context.AddTypeDecl(copied_type);