On Saturday, 21 April 2018 at 07:37:50 UTC, Mike Franklin wrote:
Does D have some way to dynamically allocate on the stack? I'm
looking for something roughly equivalent to the following C
code.
int doSomething(size_t len)
{
char stackBuffer[len + 1];
doSomethingElse(stackBuffer);
}
Unbounded allocation on stack is kind of anti-pattern and a
potential DoS vector.
A separate region allocator is exactly as fast and can easily
survive across boundaries of function calls.
Also you probably want something like char[X] = void;
for efficiency if allocating on stack.
Thanks,
Mike