>>426
バグを調査するときの重要な考え方として「バグが確実に再現する条件/確実に発生しない条件を明確化する」というのがある。

この場合も、まずはバグ「メソッドrootsを呼んだときには親オブジェクトへのポインタが訳の分からないアドレスを指すことがある」の条件を明確化するために「訳の分からないアドレスはどの変数に入っているのか」「訳の分からないアドレスはどういうバケツリレーで渡されているのか」「訳の分からないアドレスは最初にどこにあるのか」あたりを明確化するのがよろしいかと。

そもそも>>426で「メソッドrootsを呼んだときには親オブジェクトへのポインタが訳の分からないアドレスを指すことがある」は再現するの?