May 07, 2004
error in 0.86 and 0.88

dmd temp.d
Internal error: ..\ztc\cod1.c 2721


gdc temp.d
error in gdc
/tmp/ccbPv4bl.o(.text+0x258): undefined reference to
`_init_19TypeInfo_S4temp3vec'

I could be doing something wrong, but it would help if the compiler let me know that.

struct vec {
float x;float y;float z;
void print() {printf("{%f %f %f}\n",x,y,z);}
int opCmp(vec b) {
float a=x*x+y*y+z*z;
float c=b.x*b.x+b.y*b.y+b.z*b.z;
if (a>c) return 1;
if (a<c) return -1;
if (a==c) return 0;
}
static vec opCall(float a,float b,float c) {vec
ret;ret.x=a;ret.y=b;ret.z=c;return ret;}
int opEqual(vec b) {
return x==b.x&&y==b.y&&z==b.z;
}
}
int main () {
int[vec] b;
b[vec(1,2,3)]=1;
return 0;
}