Michal Minich: > I need to use this workaround because global array I want to initialize > in module constructor is immutable.
A pointer to a immutable array is immutable. So you aren't improving the code, just making it more obfuscated. So there is zero need to use a pointer. Immutable data is not meant to be modified, a compiler may move your empty array in read only memory. This is bad. Some people have recently discussed about this problem and a bug report was proposed. Until some language-supported solution is found, the simpler solution for this problem may be to use a static mutable array... > is there some performance overhead compared to using > for (int x = 0; x <= 255; x++) ? In theory there is no difference. In practice there is no difference with dmd only if you use the -O compiler switch. So it's a compiler implementation thing, and you need to look at the produced asm if you want to be sure with a different compiler. Bye, bearophile
