From: Daniel Jasper Date: Thu, 15 Jun 2017 09:17:12 +0000 (+0000) Subject: Revert "Define _GNU_SOURCE for rtems c++" X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=fc4d918af2269a0e6ed168f773bd14d8e3b7f058;p=clang Revert "Define _GNU_SOURCE for rtems c++" This reverts commit r305399. This breaks a build in libcxx: libcxx/src/system_error.cpp:90:16: error: assigning to 'int' from incompatible type 'char *' if ((ret = ::strerror_r(ev, buffer, strerror_buff_size)) != 0) { ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1 error generated. Which makes sense according to: https://linux.die.net/man/3/strerror_r Not entirely sure how this needs to be fixed. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@305456 91177308-0d34-0410-b5e6-96231b3b80d8 --- diff --git a/lib/Basic/Targets.cpp b/lib/Basic/Targets.cpp index 3bf20fef5d..a3b8330707 100644 --- a/lib/Basic/Targets.cpp +++ b/lib/Basic/Targets.cpp @@ -4734,9 +4734,6 @@ protected: Builder.defineMacro("__rtems__"); Builder.defineMacro("__ELF__"); - // Required by the libc++ locale support. - if (Opts.CPlusPlus) - Builder.defineMacro("_GNU_SOURCE"); } public: diff --git a/test/Preprocessor/init.c b/test/Preprocessor/init.c index f7540a6322..0bd9e97845 100644 --- a/test/Preprocessor/init.c +++ b/test/Preprocessor/init.c @@ -8779,7 +8779,6 @@ // KFREEBSDI686-DEFINE:#define __GLIBC__ 1 // // RUN: %clang_cc1 -x c++ -triple i686-pc-linux-gnu -fobjc-runtime=gcc -E -dM < /dev/null | FileCheck -match-full-lines -check-prefix GNUSOURCE %s -// RUN: %clang_cc1 -x c++ -triple sparc-rtems-elf -E -dM < /dev/null | FileCheck -match-full-lines -check-prefix GNUSOURCE %s // GNUSOURCE:#define _GNU_SOURCE 1 // // RUN: %clang_cc1 -x c++ -std=c++98 -fno-rtti -E -dM < /dev/null | FileCheck -match-full-lines -check-prefix NORTTI %s