diff options
Diffstat (limited to 'testsuite/tests/runtime-errors/stackoverflow.ml')
-rw-r--r-- | testsuite/tests/runtime-errors/stackoverflow.ml | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/testsuite/tests/runtime-errors/stackoverflow.ml b/testsuite/tests/runtime-errors/stackoverflow.ml new file mode 100644 index 000000000..4d211bc82 --- /dev/null +++ b/testsuite/tests/runtime-errors/stackoverflow.ml @@ -0,0 +1,15 @@ +let rec f x = + if x land 0xFFFF <> 0 + then 1 + f (x + 1) + else + try + 1 + f (x + 1) + with Stack_overflow -> + print_string "x = "; print_int x; print_newline(); + raise Stack_overflow + +let _ = + try + ignore(f 0) + with Stack_overflow -> + print_string "Stack overflow caught"; print_newline() |