112a9d9c8Sopenharmony_ci// bindgen-flags: --blocklist-type Wrapper -- --std=c++11
212a9d9c8Sopenharmony_ci
312a9d9c8Sopenharmony_citemplate<typename T>
412a9d9c8Sopenharmony_cistruct Wrapper {
512a9d9c8Sopenharmony_ci    struct Wrapped {
612a9d9c8Sopenharmony_ci        T t;
712a9d9c8Sopenharmony_ci    };
812a9d9c8Sopenharmony_ci    using Type = Wrapped;
912a9d9c8Sopenharmony_ci};
1012a9d9c8Sopenharmony_ci
1112a9d9c8Sopenharmony_citemplate<typename T>
1212a9d9c8Sopenharmony_ciclass Rooted {
1312a9d9c8Sopenharmony_ci    using MaybeWrapped = typename Wrapper<T>::Type;
1412a9d9c8Sopenharmony_ci    MaybeWrapped ptr;
1512a9d9c8Sopenharmony_ci
1612a9d9c8Sopenharmony_ci    /**
1712a9d9c8Sopenharmony_ci     * <div rustbindgen replaces="Rooted_MaybeWrapped"></div>
1812a9d9c8Sopenharmony_ci     */
1912a9d9c8Sopenharmony_ci    using MaybeWrapped_simple = T;
2012a9d9c8Sopenharmony_ci};
21