Skip to content

Commit f4d6e67

Browse files
matzclaude
andcommitted
throw.h: exclude arm64 from mingw64 builtin setjmp/longjmp; fix #6637
__builtin_setjmp/longjmp are x86/x86_64 specific gcc intrinsics and not supported on arm64. windows arm64 with msys2 clangarm64 now correctly falls through to standard setjmp/longjmp. Co-authored-by: Claude <[email protected]>
1 parent c04fdf8 commit f4d6e67

1 file changed

Lines changed: 1 addition & 1 deletion

File tree

‎include/mruby/throw.h‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -33,7 +33,7 @@ typedef void *mrb_jmpbuf_impl;
3333
#if defined(__APPLE__) || defined(__FreeBSD__) || defined(__NetBSD__) || defined(__OpenBSD__)
3434
#define MRB_SETJMP _setjmp
3535
#define MRB_LONGJMP _longjmp
36-
#elif defined(__MINGW64__) && defined(__GNUC__) && __GNUC__ >= 4
36+
#elif defined(__MINGW64__) && !defined(_M_ARM64) && defined(__GNUC__) && __GNUC__ >= 4
3737
#define MRB_SETJMP __builtin_setjmp
3838
#define MRB_LONGJMP __builtin_longjmp
3939
#else

0 commit comments

Comments
 (0)