mirror of
https://gitlab.gnome.org/GNOME/glib.git
synced 2025-01-24 13:06:14 +01:00
Don't fall back to raise(SIGTRAP) on Windows
When targeting mingw on architectures other than x86, the earlier cases don't apply, and the final fallback, raise(SIGTRAP) isn't usable there. GCC and Clang both support __builtin_trap(), so in case we have no other alternatives, and are on windows (where raise() isn't available), we can resort to this.
This commit is contained in:
parent
f733eff2ee
commit
77346d903d
@ -61,7 +61,7 @@ void g_on_error_stack_trace (const gchar *prg_name);
|
|||||||
# define G_BREAKPOINT() G_STMT_START{ __debugbreak(); }G_STMT_END
|
# define G_BREAKPOINT() G_STMT_START{ __debugbreak(); }G_STMT_END
|
||||||
#elif defined (__alpha__) && !defined(__osf__) && defined (__GNUC__) && __GNUC__ >= 2
|
#elif defined (__alpha__) && !defined(__osf__) && defined (__GNUC__) && __GNUC__ >= 2
|
||||||
# define G_BREAKPOINT() G_STMT_START{ __asm__ __volatile__ ("bpt"); }G_STMT_END
|
# define G_BREAKPOINT() G_STMT_START{ __asm__ __volatile__ ("bpt"); }G_STMT_END
|
||||||
#elif defined (__APPLE__)
|
#elif defined (__APPLE__) || (defined(_WIN32) && (defined(__clang__) || defined(__GNUC__)))
|
||||||
# define G_BREAKPOINT() G_STMT_START{ __builtin_trap(); }G_STMT_END
|
# define G_BREAKPOINT() G_STMT_START{ __builtin_trap(); }G_STMT_END
|
||||||
#else /* !__i386__ && !__alpha__ */
|
#else /* !__i386__ && !__alpha__ */
|
||||||
# define G_BREAKPOINT() G_STMT_START{ raise (SIGTRAP); }G_STMT_END
|
# define G_BREAKPOINT() G_STMT_START{ raise (SIGTRAP); }G_STMT_END
|
||||||
|
Loading…
Reference in New Issue
Block a user