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; } |