``` vim let a = {} let a["a"] = a echo a ``` ``` {'a': {...}} ``` これはOK。しかし ``` vim let a = {} echo [a,a,a] ``` ``` [{}, {...}, {...}] ``` これや ``` vim echo repeat([[]], 3) ``` ``` [[],[...],[...]] ``` これはNG。 循環参照を copyID で確認しているけど、それを戻していないので1番目の copyID がそのまま使われている。 https://gist.github.com/mattn/d9deb113d7325d7119fe