[Lldb-commits] [clang] [lldb] [clang][AST] fix ast-print of extern <lang> with >=2 declarators, fixed (PR #93913)

Aaron Ballman via lldb-commits lldb-commits at lists.llvm.org
Tue Jun 18 04:59:03 PDT 2024


================
@@ -576,13 +576,18 @@ template <typename T> static bool isFirstInExternCContext(T *D) {
   return First->isInExternCContext();
 }
 
-static bool isSingleLineLanguageLinkage(const Decl &D) {
-  if (const auto *SD = dyn_cast<LinkageSpecDecl>(D.getDeclContext()))
-    if (!SD->hasBraces())
-      return true;
+static bool isUnbracedLanguageLinkage(const DeclContext *DC) {
+  if (!DC)
+    return false;
+  if (const auto *SD = dyn_cast<LinkageSpecDecl>(DC))
+    return !SD->hasBraces();
   return false;
 }
----------------
AaronBallman wrote:

```suggestion
  if (const auto *SD = dyn_cast_if_present<LinkageSpecDecl>(DC))
    return !SD->hasBraces();
  return false;
}
```
Sorry for not noticing this earlier, but we can simplify even further this way.

https://github.com/llvm/llvm-project/pull/93913


More information about the lldb-commits mailing list