[all-commits] [llvm/llvm-project] e0d94d: [lldb][DWARFASTParserClang] Don't complete conflic...

Michael Buch via All-commits all-commits at lists.llvm.org
Mon Sep 8 00:39:05 PDT 2025


  Branch: refs/heads/release/21.x
  Home:   https://github.com/llvm/llvm-project
  Commit: e0d94d9626e4e942b608cd39cadf367cbe2b0c96
      https://github.com/llvm/llvm-project/commit/e0d94d9626e4e942b608cd39cadf367cbe2b0c96
  Author: Michael Buch <michaelbuch12 at gmail.com>
  Date:   2025-09-08 (Mon, 08 Sep 2025)

  Changed paths:
    M lldb/source/Plugins/SymbolFile/DWARF/DWARFASTParserClang.cpp
    A lldb/test/Shell/SymbolFile/DWARF/objcxx-forward-decls.test

  Log Message:
  -----------
  [lldb][DWARFASTParserClang] Don't complete conflicting Objective-C++ types (#156681)

This upstreams https://github.com/swiftlang/llvm-project/pull/10313.

If we detect a situation where a forward declaration is C++ and the
definition DIE is Objective-C, then just don't try to complete the type
(it would crash otherwise). In the long term we might want to add
support for completing such types.

We've seen real world crashes when debugging WebKit and wxWidgets
because of this. Both projects forward declare ObjC++ decls in the way
shown in the test.

rdar://145959981
(cherry picked from commit a862225813c251c28b085603b7d32d4b111dbc57)



To unsubscribe from these emails, change your notification settings at https://github.com/llvm/llvm-project/settings/notifications


More information about the All-commits mailing list