[Lldb-commits] [lldb] [LLDB] Enable SBTypeSynthetic manipulation for SBValue instances (PR #209056)

David Mentler via lldb-commits lldb-commits at lists.llvm.org
Wed Jul 15 16:00:51 PDT 2026


mentlerd wrote:

> You could add that but wouldn't it be at base "Clone" followed by "SetTypeSynthetic"?

The implementation could be `ValueObject::Clone`, followed by `ValueObject::SetSyntheticChildrenOverride`. That makes my example behave in a less confusing way to me for all cases:

```python
value = frame.FindVariable("something_with/without_synthetic")
value.IsSynthetic() # true/false

new_value = value.CloneWithTypeSynthetic(bar);
new_value.IsSynthetic() # true
new_value.GetTypeSynthetic() # bar
```

---

Regardless, your explanation about needing to be explicit on which VO (static, or synthetic) you wish to re-assign the SCP of also makes sense to me. 

If we go with that route then the only thing that needs fixing is that `ValueObjectSynthetic` will have to start respecting the outcome of `this->GetSyntheticChildren()` for it's frontend choice.

Which one should it be?

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


More information about the lldb-commits mailing list