C is Brittle D is Plastic

Walter Bright newshound2 at digitalmars.com
Tue Apr 7 20:17:47 UTC 2026


```
void process(size_t size, char buf[static size]) {
     // Compiler can assume buf points to at least 'size' elements
}
```

Is just a failure in language design:

1. it requires two independent pieces of information

2. it repeats itself

3. cannot declare a VLA as a variable

4. cannot return a VLA

6. cannot encapsulate a VLA in a struct

I don't recall it ever being used. It's next to useless.


More information about the Digitalmars-d mailing list