|
5 | 5 |
|
6 | 6 | #ifdef LIBRARY_EXPORTS |
7 | 7 | #include "jl_internal_funcs.inc" |
| 8 | +#undef jl_setjmp |
| 9 | +#undef jl_longjmp |
8 | 10 | #endif |
9 | 11 |
|
10 | 12 | //** Configuration options that affect the Julia ABI **// |
@@ -1885,14 +1887,25 @@ JL_DLLEXPORT void jl_restore_excstack(size_t state) JL_NOTSAFEPOINT; |
1885 | 1887 | #if defined(_COMPILER_GCC_) |
1886 | 1888 | JL_DLLEXPORT int __attribute__ ((__nothrow__,__returns_twice__)) (jl_setjmp)(jmp_buf _Buf); |
1887 | 1889 | __declspec(noreturn) __attribute__ ((__nothrow__)) void (jl_longjmp)(jmp_buf _Buf, int _Value); |
| 1890 | +JL_DLLEXPORT int __attribute__ ((__nothrow__,__returns_twice__)) (ijl_setjmp)(jmp_buf _Buf); |
| 1891 | +__declspec(noreturn) __attribute__ ((__nothrow__)) void (ijl_longjmp)(jmp_buf _Buf, int _Value); |
1888 | 1892 | #else |
1889 | 1893 | JL_DLLEXPORT int (jl_setjmp)(jmp_buf _Buf); |
1890 | 1894 | void (jl_longjmp)(jmp_buf _Buf, int _Value); |
| 1895 | +JL_DLLEXPORT int (ijl_setjmp)(jmp_buf _Buf); |
| 1896 | +void (ijl_longjmp)(jmp_buf _Buf, int _Value); |
1891 | 1897 | #endif |
| 1898 | +#ifdef LIBRARY_EXPORTS |
| 1899 | +#define jl_setjmp_f ijl_setjmp |
| 1900 | +#define jl_setjmp_name "ijl_setjmp" |
| 1901 | +#define jl_setjmp(a,b) ijl_setjmp(a) |
| 1902 | +#define jl_longjmp(a,b) ijl_longjmp(a,b) |
| 1903 | +#else |
1892 | 1904 | #define jl_setjmp_f jl_setjmp |
1893 | 1905 | #define jl_setjmp_name "jl_setjmp" |
1894 | 1906 | #define jl_setjmp(a,b) jl_setjmp(a) |
1895 | 1907 | #define jl_longjmp(a,b) jl_longjmp(a,b) |
| 1908 | +#endif |
1896 | 1909 | #elif defined(_OS_EMSCRIPTEN_) |
1897 | 1910 | #define jl_setjmp(a,b) setjmp(a) |
1898 | 1911 | #define jl_longjmp(a,b) longjmp(a,b) |
|
0 commit comments