Reinterpret_cast в простых случаях ничего не испортит, но если T сложный какой-нибудь тип — это может плохо кончиться.
А можно пример, ну или какую то строчку из стандарта/cppref/какого-нибудь компилятора, я просто не понимаю почему *static_cast<T**>(static_cast<void*>(...));. сделать нельзя? А если можно то должно быть можно и через один reinterpret