| template <typename T> struct Base { | |
| Base(T &t) : ref(t), pointer(&t) {} | |
| // Try referencing `Derived` via different ways to potentially make LLDB | |
| // pull in the definition (which would recurse back to this base class). | |
| T &ref; | |
| T *pointer; | |
| T func() { return ref; } | |
| }; | |
| struct Derived : Base<Derived> { | |
| Derived() : Base<Derived>(*this) {} | |
| int member = 0; | |
| }; | |
| Derived derived; | |
| int main() { return derived.member; } |