無名クラスの入れ子クラス

無名クラスの入れ子クラスを、関数テンプレートの引数にすると、Comeauでは、コンパイルできない。
どうやら、invalidなコードのようだ。

class
{
  public:
    class bar{} baz;
} foo;

template <typename T>
void hoge(const T&) {}

int main(int argc, char *argv[])
{
  hoge(foo.baz);
  return 0;
}

GCCコンパイルできるのは、おそらくコンパイラのバグ。
C++0xでは、validになるようなので、バグ報告はしない。