summaryrefslogtreecommitdiffstats
path: root/libc/upstream-openbsd
diff options
context:
space:
mode:
authorChih-Hung Hsieh <chh@google.com>2014-08-28 11:47:48 -0700
committerChih-Hung Hsieh <chh@google.com>2014-08-28 15:10:01 -0700
commitb6b5cb53895a2d5e94368f14a25ccfaf807eacad (patch)
tree5ac04324d7b522369d8487ba142d6c59c9ed5406 /libc/upstream-openbsd
parentfbe9d3dfeb0e09c0e4aa3221aace8249c0efe881 (diff)
downloadbionic-b6b5cb53895a2d5e94368f14a25ccfaf807eacad.zip
bionic-b6b5cb53895a2d5e94368f14a25ccfaf807eacad.tar.gz
bionic-b6b5cb53895a2d5e94368f14a25ccfaf807eacad.tar.bz2
Ignore all __weak_alias in OpenBSD libC.
GCC assembler allows xyz to be redeclared as weak, by __weak_alias(xyz, _xyz), while _xyz is undefined. Clang does not like that but silently generates no code. It will reject its own .s file if the assembly code is saved first. Since we have no reason to define xyz or _xyz as weak symbol now, and _xyz is a macro to xyz, we simplify libC to have only xyz defined as global. BUG: 17186746 Change-Id: I24b154425838683cae69248cc750c59e26fd5467
Diffstat (limited to 'libc/upstream-openbsd')
-rw-r--r--libc/upstream-openbsd/android/include/openbsd-compat.h3
1 files changed, 3 insertions, 0 deletions
diff --git a/libc/upstream-openbsd/android/include/openbsd-compat.h b/libc/upstream-openbsd/android/include/openbsd-compat.h
index b9768e1..630094d 100644
--- a/libc/upstream-openbsd/android/include/openbsd-compat.h
+++ b/libc/upstream-openbsd/android/include/openbsd-compat.h
@@ -32,6 +32,9 @@
#define _warn warn
#define _warnx warnx
+/* Ignore all __weak_alias in OpenBSD. */
+#define __weak_alias(alias,sym)
+
/* OpenBSD's <ctype.h> uses these names, which conflicted with stlport.
* Additionally, we changed the numeric/digit type from N to D for libcxx.
*/