次のコードは、VS2005 の Visual Basic コンパイラを即座にクラッシュさせます (少なくとも、私の環境では: Windows 7)。
Public Module foo
Public Function FUNC() As System.Int32
Static dict As Generic.Dictionary(Of Int32, Of String)
Return 0
End Function
End Module
具体的には、「dict」(静的、ローカル辞書) を定義する行の終了時に。さて、私はコンパイラでバグを宣言することに懐疑的であることを学びました (特に上記のような単純なコード セットの場合)。なぜこれが起こるのか興味があります。明らかに、洗練されていないクラッシュは VS2005 の制限ですが、静的な汎用辞書の宣言に関する根本的な問題が原因でクラッシュが発生するのでしょうか? のように、これは悪い/違法な VB ですか?