(1) data に書けるのは定数のみ (2) どこかのバージョンから、定数だけから成る式は定数として扱われるようになった(コンパイル時に決定可能なので) ということじゃないかなあ? 変数や関数を含むとエラーになるでしょ? (ただし PI() は関数の皮をかぶった定数)