tsan: relax checking of errno spoiling in signal handlers
[blocksruntime.git] / lib / eprintf.c
blob3626dbf8b0c4a45c1414194606ce663947ddbf0f
1 /* ===---------- eprintf.c - Implements __eprintf --------------------------===
3 * The LLVM Compiler Infrastructure
5 * This file is dual licensed under the MIT and the University of Illinois Open
6 * Source Licenses. See LICENSE.TXT for details.
8 * ===----------------------------------------------------------------------===
9 */
13 #include "int_lib.h"
14 #include <stdio.h>
18 * __eprintf() was used in an old version of <assert.h>.
19 * It can eventually go away, but it is needed when linking
20 * .o files built with the old <assert.h>.
22 * It should never be exported from a dylib, so it is marked
23 * visibility hidden.
25 #ifndef _WIN32
26 __attribute__((visibility("hidden")))
27 #endif
28 void __eprintf(const char* format, const char* assertion_expression,
29 const char* line, const char* file)
31 fprintf(stderr, format, assertion_expression, line, file);
32 fflush(stderr);
33 compilerrt_abort();