digitalmars.D.bugs - Const struct member is a non-constant expression
- Stewart Gordon (26/26) Mar 21 2005 Using DMD 0.118, Windows 98SE.
- Thomas Kuehne (12/34) Mar 22 2005 -----BEGIN PGP SIGNED MESSAGE-----
Using DMD 0.118, Windows 98SE.
Something similar to this was reported before, and I've a recollection
of hearing this was fixed, but maybe I was imagining it. But
something's changed - using a whole const struct in a static initialiser
now works, but using a member of one doesn't.
----------
struct Qwert { int yuiop; }
struct Asdfg { int hjkl; }
struct Zxcvb { Asdfg nm; }
const int qaz = 15;
const Qwert wsx = { qaz };
const Asdfg edc = { wsx.yuiop };
const Zxcvb rfv = { edc };
int tgb = rfv.nm.hjkl;
----------
D:\My Documents\Programming\D\Tests\bugs\init_struct.d(7): non-constant
expression *(&wsx)
D:\My Documents\Programming\D\Tests\bugs\init_struct.d(7): non-constant
expression *(&wsx)
D:\My Documents\Programming\D\Tests\bugs\init_struct.d(9): non-constant
expression *(&rfv)
----------
Stewart.
--
My e-mail is valid but not my primary mailbox. Please keep replies on
the 'group where everyone may benefit.
Mar 21 2005
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
Stewart Gordon schrieb am Mon, 21 Mar 2005 11:45:30 +0000:
Using DMD 0.118, Windows 98SE.
Something similar to this was reported before, and I've a recollection
of hearing this was fixed, but maybe I was imagining it. But
something's changed - using a whole const struct in a static initialiser
now works, but using a member of one doesn't.
----------
struct Qwert { int yuiop; }
struct Asdfg { int hjkl; }
struct Zxcvb { Asdfg nm; }
const int qaz = 15;
const Qwert wsx = { qaz };
const Asdfg edc = { wsx.yuiop };
const Zxcvb rfv = { edc };
int tgb = rfv.nm.hjkl;
----------
D:\My Documents\Programming\D\Tests\bugs\init_struct.d(7): non-constant
expression *(&wsx)
D:\My Documents\Programming\D\Tests\bugs\init_struct.d(7): non-constant
expression *(&wsx)
D:\My Documents\Programming\D\Tests\bugs\init_struct.d(9): non-constant
expression *(&rfv)
----------
Added to DStress as
http://dstress.kuehne.cn/run/const_15.d
http://dstress.kuehne.cn/run/const_16.d
Thomas
-----BEGIN PGP SIGNATURE-----
iD8DBQFCP8Np3w+/yD4P9tIRAviaAJ9GsbvGuk+eOPw5IURUGZ0DBr2e+gCcDDHI
drxN6I6+HlFAcGTgR5yoPcc=
=2VOF
-----END PGP SIGNATURE-----
Mar 22 2005








Thomas Kuehne <thomas-dloop kuehne.thisisspam.cn>