Why did C never implement “stack extension”?
问题 Why did C never implement "stack extension" to allow (dynamically-sized) stack variables of a callee function to be referenced from the caller? This could work by extending the caller's stack frame to include the "dynamically-returned" variables from the callee's stack frame. (You could, but shouldn't, implement this with alloca from the caller - it may not survive optimisation.) e.g. If I wanted to return the dynamically-size string "e", the implementation could be: --+---+-----+ | a | b | -