[PATCH] D24690: Replace __ANDROID__ with __BIONIC__.

Dan Albert via cfe-commits cfe-commits at lists.llvm.org
Sat Sep 17 22:03:48 PDT 2016


danalbert added a comment.

In https://reviews.llvm.org/D24690#545523, @compnerd wrote:

> So, the only thing that Im confused about is where does `__BIONIC__` get defined?


It's in Bionic's `<sys/cdefs.h>`, which gets pulled in via `<features.h>`.


================
Comment at: include/__config:340
@@ -339,3 +344,1 @@
 #if !defined(_LIBCPP_HAS_MUSL_LIBC)
-# include <features.h>
-#if __GLIBC_PREREQ(2, 15)
----------------
EricWF wrote:
> What happened to this include? I believe it's needed to get `__GLIBC_PREREQ`.
Included much earlier now (L90). We always needed this for Linux, and having it at the top of the file means we won't accidentally forget to include it for an earlier check.

================
Comment at: include/__config:766
@@ -761,3 +765,3 @@
 // Most unix variants have catopen.  These are the specific ones that don't.
-#if !defined(_WIN32) && !defined(__ANDROID__) && !defined(_NEWLIB_VERSION)
+#if !defined(_WIN32) && !defined(__BIONIC__) && !defined(_NEWLIB_VERSION)
 #define _LIBCPP_HAS_CATOPEN 1
----------------
compnerd wrote:
> Not your fault, but `_WIN32` and `__unix__`?  Im not sure if MinGW or cygwin define both.
That is odd. I would assume that `_WIN32` implies `!__unix__`.


Repository:
  rL LLVM

https://reviews.llvm.org/D24690





More information about the cfe-commits mailing list