# Objective > Issue raised on [Discord](https://discord.com/channels/691052431525675048/1002362493634629796/1179182488787103776) Currently the following code fails due to a missing `TypePath` bound: ```rust #[derive(Reflect)] struct Foo<T>(T); #[derive(Reflect)] struct Bar<T>(Foo<T>); #[derive(Reflect)] struct Baz<T>(Bar<Foo<T>>); ``` ## Solution Add `TypePath` to the per-field bounds instead of _just_ the generic type parameter bounds. ### Related Work It should be noted that #9046 would help make these kinds of issues easier to work around and/or avoid entirely. --- ## Changelog - Fixes missing `TypePath` requirement when deriving `Reflect` on nested generics |
||
|---|---|---|
| .. | ||
| impls | ||
| container_attributes.rs | ||
| derive_data.rs | ||
| documentation.rs | ||
| enum_utility.rs | ||
| field_attributes.rs | ||
| from_reflect.rs | ||
| lib.rs | ||
| reflect_value.rs | ||
| registration.rs | ||
| serialization.rs | ||
| trait_reflection.rs | ||
| type_path.rs | ||
| type_uuid.rs | ||
| utility.rs | ||