**Compile with msvc, stack overflow!**
https://github.com/jerryscript-project/jerryscript/blob/badfdf4dba1fa0a15bd78163c1713ada5e65cd22/jerry-core/include/jerryscript-compiler.h#L73
https://github.com/jerryscript-project/jerryscript/blob/4592143400910769707477bc2282a6c6601c9a31/jerry-core/vm/vm.c#L5218

Look at the code expectation that the macro expands to
`ecma_value_t* stack = (ecma_value_t*) (_alloca(sizeof(ecma_value_t) * size));`
But the result expands to
`ecma_value_t* stack = (ecma_value_t*) (_alloca(sizeof(ecma_value_t) * frame_size + (sizeof(vm_frame_ctx_t) / sizeof(ecma_value_t))));`


msvc stack overflow
This is a GitHub Issue
repo:jerryscript
owner:jerryscript-project
Title : msvc stack overflow
Issue date:

--- start body ---
**Compile with msvc, stack overflow!**
https://github.com/jerryscript-project/jerryscript/blob/badfdf4dba1fa0a15bd78163c1713ada5e65cd22/jerry-core/include/jerryscript-compiler.h#L73
https://github.com/jerryscript-project/jerryscript/blob/4592143400910769707477bc2282a6c6601c9a31/jerry-core/vm/vm.c#L5218

Look at the code expectation that the macro expands to
`ecma_value_t* stack = (ecma_value_t*) (_alloca(sizeof(ecma_value_t) * size));`
But the result expands to
`ecma_value_t* stack = (ecma_value_t*) (_alloca(sizeof(ecma_value_t) * frame_size + (sizeof(vm_frame_ctx_t) / sizeof(ecma_value_t))));`


--- end body ---

The issue describes a potential stack overflow when compiling with MSVC due to incorrect macro expansion in the JerryScript codebase. The macro is expected to allocate a specific size for the stack, but it expands to a larger size, which can lead to a stack overflow error during execution.