class X {
protected:
typedef map<string, int, ics_less> valuemap;
valuemap value_table;//ここでエラー
}

のようにするとコンパイル時に無限ループになってしまうのですが、
なぜなってしまうのでしょう。なにかおかしなところがあるのでしょうか。
以下のような文が延々と表示されてしまいます。

c:\program files\microsoft visual studio\vc98\include\map(27) : warning C4786: '??R_Kfn@?$map@V?
$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@HU?$less@V?$basic_string@DU?
$char_traits@D@std@@V?$allocator@D@2@@std@@@2@V?$allocator@H@2@@s