On Monday, 8 July 2024 at 13:29:05 UTC, user1234 wrote:
On Monday, 8 July 2024 at 08:56:51 UTC, drug007 wrote:
I need to generate some meta info of my data types. I do it
this [...]
How can I "break" this recursion or some other work around to
fix it?
Use `Node*[]` for the children type. That way the compiler
knows the size of the (previously) problematic member. In other
words, instead of the need to know `Node` size, the compiler
will not look further, it's a pointer.
This isn't the issue exactly. `Node[]` is a pointer as well.
The issue is that the template recursively depends on itself.
You would run into the same issue if the template recursed on the
type of the pointed-at value.
-Steve