VC++6でboost::shared_ptrを使ったとき……

スマートポインタの真似事のソースを書いていて別の型で展開した場合にprivateなメンバ変数にアクセスできなくて、はてと思ってboostのsmart_ptr.hppを参考にしようと見てみたら………BOOST_NO_MEMBER_TEMPLATE_FRIENDSが定義されている場合(VC++6.0はこっち)だと………メンバ(ポインティーのpxとリファレンスカウンタのpn)がpublicですから!!!!ギャー!!
しかもなんか見た目を欺こうとしているような定義の仕方に見えるんですけど……。