I heard from many people that variable length array, introduced in C99, are terrible. Some guys on IRC said a minute ago « I don’t think C++ will get VLA’s, strousoup made some very negative comments about them ».
What are the reasons why those people hate VLAs?
VLAs allocate arrays on the stack, in runtime, making it harder, or even impossible to determine the stack size used at compile time. Since the stack has a rather small amount of memory available (in comparison with the heap), many worry that VLAs have a great potential for stack overflow.
The upcoming version of the MISRA-C coding standard is most likely going to ban VLAs as well.