純粋関数が純粋を返すとはどういう意味ですか?
pure int doubleMe(in int i) pure { return i * 2; }
コードは を指定せずにコンパイルされるredundant storage class pure
ので、これはバグではないと思いますか?
// DMD 2.056
純粋関数が純粋を返すとはどういう意味ですか?
pure int doubleMe(in int i) pure { return i * 2; }
コードは を指定せずにコンパイルされるredundant storage class pure
ので、これはバグではないと思いますか?
// DMD 2.056
Pureは関数属性です。関数属性は、戻りタイプの前またはパラメーターリストの後に置くことができます。どちらの場合も、戻り型ではなく関数について説明します。したがって、「純粋に戻る」というようなことはありません。
エラーが発生するはずです。おそらくバグです。@safeなど、他の属性でも同じことが無視されます。
pure int
おそらく無視する必要があります。ただし、関数が「純粋な関数」を返す可能性があるためです。その場合、バグかどうかは議論の余地があると思います。