arrays stack-overflow rust

arrays - Desbordamiento de pila con matriz grande de tamaño fijo en Rust 0.13



stack-overflow (1)

Rust tiene un tamaño de pila predeterminado de 2Mib, te estás quedando sin espacio en la pila:

fn main() { println!("min_stack = {}", std::rt::min_stack()); }

Para asignar la matriz de ese tamaño, debe asignarla en el box uso de heap:

fn main() { let l = box [0u, ..1_000_000u]; }

Deseo verificar con el experto de Rust este sencillo programa de Rust (rustc 0.13.0-nightly en el sistema Linux x86-64):

/* the runtime error is: task ''<main>'' has overflowed its stack Illegal instruction (core dumped) */ fn main() { let l = [0u, ..1_000_000u]; }

El proceso de compilación finaliza perfectamente sin ningún error, pero en el tiempo de ejecución el programa falló con el error que se muestra en el comentario del código.

¿Hay algún límite en la dimensión de la matriz de tamaño fijo en Rust o es un error en algún lugar del compilador?