Skip to content
Commit 470de2bb authored by Michael Buch's avatar Michael Buch
Browse files

Reland "[lldb][DWARFASTParserClang] Fetch constant value from variable...

Reland "[lldb][DWARFASTParserClang] Fetch constant value from variable defintion if available (#71004)"

 https://github.com/llvm/llvm-project/pull/70639 proposes moving the
 `DW_AT_const_value` on inline static members from the declaration DIE to
 the definition DIE. This patch makes sure the LLDB's expression
 evaluator can continue to support static initialisers even if the
 declaration doesn't have a `DW_AT_const_value` anymore.

 Previously the expression evaluator would find the constant for a
 VarDecl from its declaration `DW_TAG_member` DIE. In cases where the
 initialiser was specified out-of-class, LLDB could find it during symbol
 resolution.

 However, neither of those will work for constants, since we don't have a
 constant attribute on the declaration anymore and we don't have
 constants in the symbol table.

 **Testing**

 * If https://github.com/llvm/llvm-project/pull/70639 were to land
 without this patch then most of the `TestConstStaticIntegralMember.py`
 would start failing
parent 7c3707ae
Loading
Loading
Loading
Loading
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please to comment