D言語のstatic

void foo()
{
    static string str = "hoge";
    static size_t num = 1;
    static int[int] hash = [1:1];  //-> Error: non-constant expression [1:1]

    ...
}

これがコンパイル通らない.ここの説明見ても条件があるようには見えないのだけど(そういえば,static属性の説明だけnameが設定されてないのはミス?).
連想配列の要素として設定する場合はリテラルでも定数扱いにならないってことなんだろうか??