const->immutable array argument?
Kagamin
spam at here.lot
Tue Sep 20 05:24:36 PDT 2011
bearophile Wrote:
> In this bug report I have asked for better error messages:
> http://d.puremagic.com/issues/show_bug.cgi?id=6696
>
> But beside the error message, do you know why an immutable ref can't be given to a function with a const ref argument? foo() can't change the contents of the array a any way, so what's wrong in this code?
>
>
> void foo(const ref int[5] a) {}
> void main() {
> immutable int[5] arr;
> foo(arr); // Error?
> }
Looks like a bug. Seems like the compiler treats casted argument as an rvalue and you can't pass rvalue byref, can you?
More information about the Digitalmars-d-learn
mailing list