1 #ifndef _fail_ 2 #define _fail_ 3 4 #include <setjmp.h> 5 #include "misc.h" 6 #include "mlvalues.h" 7 8 struct longjmp_buffer { 9 jmp_buf buf; 10 }; 11 12 extern struct longjmp_buffer * external_raise; 13 extern value exn_bucket; 14 15 EXTERN Noreturn mlraise(value); 16 EXTERN Noreturn raiseprimitive0(int exnindex); 17 EXTERN Noreturn raiseprimitive1(int exnindex, value arg); 18 EXTERN Noreturn raise_with_string(int exnindex, char * msg); 19 EXTERN Noreturn failwith(char *); 20 EXTERN Noreturn invalid_argument(char *); 21 EXTERN Noreturn raise_overflow(void); 22 EXTERN Noreturn raise_out_of_memory(void); 23 extern volatile int float_exn; 24 25 extern double maxdouble; 26 27 #endif /* _fail_ */ 28