November 04, 2005
As I promised here is the root of an "old" bug discussed on D forum.
If you omit any one of the swithes or the 'private' word
or change 'p.length' to 'length' or '$' --> it compiles.

Best regards,
Tamas Nagy

DMD 0.137 Win32
Compile with switches:
dmd -c -release -inline -O dotted.d

Result:
Internal error: ..\ztc\cgcod.c 1489

dotted.d
<CODE>
class DP{
private:
void I(char[] p)
{
I(p[1..p.length]);
}
}
</CODE>


November 07, 2005
MicroWizard schrieb am 2005-11-04:
> As I promised here is the root of an "old" bug discussed on D forum.
> If you omit any one of the swithes or the 'private' word
> or change 'p.length' to 'length' or '$' --> it compiles.
>
> Best regards,
> Tamas Nagy
>
> DMD 0.137 Win32
> Compile with switches:
> dmd -c -release -inline -O dotted.d
>
> Result:
> Internal error: ..\ztc\cgcod.c 1489
>
> dotted.d
><CODE>
> class DP{
> private:
> void I(char[] p)
> {
> I(p[1..p.length]);
> }
> }
></CODE>

Added to DStress as http://dstress.kuehne.cn/compile/b/bug_cgcod_1497_A2.d http://dstress.kuehne.cn/compile/b/bug_cgcod_1497_B2.d http://dstress.kuehne.cn/compile/b/bug_cgcod_1497_C2.d http://dstress.kuehne.cn/compile/b/bug_cgcod_1497_D2.d http://dstress.kuehne.cn/compile/b/bug_cgcod_1497_E2.d http://dstress.kuehne.cn/compile/b/bug_cgcod_1497_F2.d

Thomas