digitalmars.D.bugs - inline lvalue bug
- Ilya Zaitseff (25/25) Feb 14 2005 struct A
- =?UTF-8?B?VGhvbWFzIEvDvGhuZQ==?= (45/45) Feb 19 2005 -----BEGIN PGP SIGNED MESSAGE-----
struct A
{
int[] x;
int foo() { return 0; }
A bar()
{
A v;
foreach (inout int f; v.x) f = 0; // (1)
return v;
}
float bug(A p1) { return bar.foo; } // error here
}
void main()
{
}
If no '-inline' specified, code compiles successfully.
When '-inline' specified, compiler outputs (dmd -inline -v test.d):
parse strlv
semantic strlv
semantic2 strlv
semantic3 strlv
inline scan strlv
test.d(14): this.bar() is not an lvalue
If I comment line (1) bug disappears.
// DMD 0.113
Feb 14 2005
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
Ilya Zaitseff wrote:
| struct A
| {
| int[] x;
| int foo() { return 0; }
| A bar()
| {
| A v;
| foreach (inout int f; v.x) f = 0; // (1)
| return v;
| }
| float bug(A p1) { return bar.foo; } // error here
| }
|
| void main()
| {
| }
|
| If no '-inline' specified, code compiles successfully.
|
| When '-inline' specified, compiler outputs (dmd -inline -v test.d):
|
| parse strlv
| semantic strlv
| semantic2 strlv
| semantic3 strlv
| inline scan strlv
| test.d(14): this.bar() is not an lvalue
|
| If I comment line (1) bug disappears.
|
| // DMD 0.113
Added to DStress as
http://dstress.kuehne.cn/run/inline_04.d
http://dstress.kuehne.cn/run/inline_05.d
http://dstress.kuehne.cn/run/inline_06.d
Thomas
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (MingW32)
iD8DBQFCFxVj3w+/yD4P9tIRAm2gAKCQJAlmuYXAG/NCXKeHlPB65+4ULACdHmob
6eND/6Ir84LpHXffqAvvgCs=
=8U5x
-----END PGP SIGNATURE-----
Feb 19 2005








=?UTF-8?B?VGhvbWFzIEvDvGhuZQ==?=