summaryrefslogtreecommitdiff
path: root/src/input
diff options
context:
space:
mode:
authorMax Kellermann <max@musicpd.org>2018-10-23 20:10:57 +0200
committerMax Kellermann <max@musicpd.org>2018-10-23 20:10:57 +0200
commitc2a2573aa5ed2d5e875c6b5f0cf84e7e940bbfa4 (patch)
tree57198837fcf65f57c65615738baa2d7c218539e1 /src/input
parent66ab2de5785755594b300b933083a0e5892d05fc (diff)
parent9274bc15bc41bbe490fde847f8422468cc20375d (diff)
Merge tag 'v0.20.22'
release v0.20.22
Diffstat (limited to 'src/input')
-rw-r--r--src/input/Error.hxx8
1 files changed, 8 insertions, 0 deletions
diff --git a/src/input/Error.hxx b/src/input/Error.hxx
index 04ea27ab8..42b88221a 100644
--- a/src/input/Error.hxx
+++ b/src/input/Error.hxx
@@ -30,7 +30,15 @@
* 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) noexcept;