# Indirect Members

**URL:** <https://forums.swift.org/t/indirect-members/81129>\
**Category:** Discussion\
**Created:** [July 15, 2025, 2:59pm UTC](https://forums.swift.org/t/indirect-members/81129 "2025-07-15T14:59:29Z")\
**Posts on this page:** 1\
**Showing post:** 5

<div class="post-metadata">

**Author:** ![xwu](https://avatars.discourse-cdn.com/v4/letter/x/b487fb/32.png) [@xwu](https://forums.swift.org/u/xwu)\
**Post date:** [July 15, 2025, 7:01pm UTC](https://forums.swift.org/t/indirect-members/81129/5 "2025-07-15T19:01:37Z")

</div>

You may be interested in this pitch for the same feature:

> [@Using \`indirect\` modifier for \`struct\` properties](https://forums.swift.org/t/using-indirect-modifier-for-struct-properties/37600):
>
> It is a known limitation that structs, being value types, cannot contain properties of the same type. For example, the following code is invalid: struct Foo { var foo: Foo // Error: Value type 'Foo' cannot have a stored property that recursively contains it } This code is invalid because in order to create an instance of Foo, we would have to provide an infinite amount of instances. Instantiating it would require infinite memory. Furthermore, the following code is also invalid: struct List\<…

---

_[View the full topic](https://forums.swift.org/t/indirect-members/81129)._
