[Issue 3522] ICE(cg87.c): variable*array[].
d-bugmail at puremagic.com
d-bugmail at puremagic.com
Thu Apr 29 02:28:48 PDT 2010
http://d.puremagic.com/issues/show_bug.cgi?id=3522
bearophile_hugs at eml.cc changed:
What |Removed |Added
----------------------------------------------------------------------------
CC| |bearophile_hugs at eml.cc
--- Comment #2 from bearophile_hugs at eml.cc 2010-04-29 02:28:23 PDT ---
> The error message is confusing (this is bug 3817), for all of them should be
> something like:
> Should be "Array operation %s not implemented (requires memory allocation)"
I don't understand.
In a program like:
void main() {
int[] a1 = [1];
int[] a2 = [2];
int[] a3;
a3 = a1 + a2;
}
I think the compiler has to write an error message like:
test.d(5): Error: Array operator + not supported (have you forgotten the []?)
So this is more correct code:
void main() {
int[] a1 = [1];
int[] a2 = [2];
int[] a3;
a3[] = a1[] + a2[];
}
But array ops don't allocate memory, so the a3 array can't be filled. This
prints nothing:
import std.stdio: writeln;
void main() {
int[] a1 = [1];
int[] a2 = [2];
int[] a3;
a3[] = a1[] + a2[];
writeln(a3);
}
This other error can be found at runtime...
--
Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
More information about the Digitalmars-d-bugs
mailing list