[Lldb-commits] [PATCH] D66175: Improve anonymous class heuristic in ClangASTContext::CreateRecordType

Adrian Prantl via Phabricator via lldb-commits lldb-commits at lists.llvm.org
Tue Aug 13 16:40:27 PDT 2019

aprantl added inline comments.

Comment at: packages/Python/lldbsuite/test/expression_command/completion-crash-lambda/TestCompletionCrashInLambda.py:4
-lldbinline.MakeInlineTest(__file__, globals(), [decorators.skipIf(bugnumber="rdar://53755023")])
+lldbinline.MakeInlineTest(__file__, globals(), [])
Can you rename that test to not contain the word "crash" and instead describe the action being performed?
(CompletionOfLambda or something like that should be fine)

Comment at: source/Symbol/ClangASTContext.cpp:1505
   bool is_anonymous = (!name) || (!name[0]);
rename this to `has_name`

Comment at: source/Symbol/ClangASTContext.cpp:1509
       *ast, (TagDecl::TagKind)kind, decl_ctx, SourceLocation(),
       SourceLocation(), is_anonymous ? nullptr : &ast->Idents.get(name));
`has_name ? &ast->Idents.get(name) : nullptr`

Comment at: source/Symbol/ClangASTContext.cpp:1513
+    // The current heuristic for checking if a CXXRecordDecl is anonymous is if
+    // there is no name or if it is just a null terminator.
+    // This is not accurate since currently this can sweep up both unnamed
if (!has_name) {
  // In C++ a lambda is also represented as an unnamed class. This is different from 
  // an *anonymous class* that the user wrote. Anonymous ...



More information about the lldb-commits mailing list