configure.ac: add `-funwind-tables` to work around clang bug
Replaces the workaround from commit
751fff07fb
which fixed only one of many
crash locations.
See:
https://github.com/MusicPlayerDaemon/MPD/issues/373
https://github.com/android-ndk/ndk/issues/831
https://bugs.llvm.org/show_bug.cgi?id=32611
This commit is contained in:
parent
e02c1adf79
commit
1e6c445320
|
@ -1354,6 +1354,11 @@ AX_APPEND_COMPILE_FLAGS([-fno-threadsafe-statics])
|
|||
AX_APPEND_COMPILE_FLAGS([-fmerge-all-constants])
|
||||
AX_APPEND_COMPILE_FLAGS([-ffast-math])
|
||||
AX_APPEND_COMPILE_FLAGS([-ftree-vectorize])
|
||||
|
||||
dnl Workaround for clang bug
|
||||
dnl https://bugs.llvm.org/show_bug.cgi?id=32611
|
||||
AX_APPEND_COMPILE_FLAGS([-funwind-tables])
|
||||
|
||||
AC_LANG_POP
|
||||
|
||||
dnl ---------------------------------- debug ----------------------------------
|
||||
|
|
|
@ -30,15 +30,7 @@
|
|||
* exist? This function attempts to recognize exceptions thrown by
|
||||
* various input plugins.
|
||||
*/
|
||||
#ifndef __clang__
|
||||
/* the "pure" attribute must be disabled because it triggers a clang
|
||||
bug, wrongfully leading to std::terminate() even though the
|
||||
function catches all exceptions thrown by std::rethrow_exception();
|
||||
this can be reproduced with clang 7 from Android NDK r18b and on
|
||||
clang 6 on FreeBSD
|
||||
(https://github.com/MusicPlayerDaemon/MPD/issues/373) */
|
||||
gcc_pure
|
||||
#endif
|
||||
bool
|
||||
IsFileNotFound(std::exception_ptr e);
|
||||
|
||||
|
|
Loading…
Reference in New Issue