On 11/29/2011 1:46 AM, Peter Alexander wrote:
Which means you also get a horrible O(n) algorithm for something that should be
a couple of compares. Why DMD does this is beyond me.

I did it to get it up and running, and haven't revisited that yet.


Global float arrays can bloat executables as well:

__gshared int[1_000_000] thisGoesInBss; // barely adds anything
__gshared float[1_000_000] thisGoesInData; // adds 4MB to exec

float arrays are initialised to NaN in D (in C they init to 0.0f), so they can't
go in the .bss section (unless you explicitly init to 0.0f).

True, but using large statically allocated arrays of any sort is usually a suboptimal solution. It's better to new or malloc them.

Reply via email to