This is the mail archive of the
binutils@sourceware.org
mailing list for the binutils project.
Re: [PATCH] binutils/nm.c: Skip sbrk() under Darwin when _POSIX_C_SOURCE not defined
- From: Tristan Gingold <gingold at adacore dot com>
- To: Chen Gang <gang dot chen dot 5i5j at gmail dot com>
- Cc: amodra at gmail dot com, binutils at sourceware dot org, markus at trippelsdorf dot de, nickc at redhat dot com
- Date: Mon, 15 Sep 2014 15:21:11 +0200
- Subject: Re: [PATCH] binutils/nm.c: Skip sbrk() under Darwin when _POSIX_C_SOURCE not defined
- Authentication-results: sourceware.org; auth=none
- References: <5416E7A2 dot 7070602 at gmail dot com>
Hello,
On 15 Sep 2014, at 15:20, Chen Gang <gang.chen.5i5j@gmail.com> wrote:
[...]
> --- a/binutils/nm.c
> +++ b/binutils/nm.c
> @@ -1698,6 +1698,7 @@ main (int argc, char **argv)
> END_PROGRESS (program_name);
>
> #ifdef HAVE_SBRK
> +#if !defined (__DARWIN_C_LEVEL) || defined (_POSIX_C_SOURCE)
> if (show_stats)
> {
> char *lim = (char *) sbrk (0);
> @@ -1705,6 +1706,7 @@ main (int argc, char **argv)
> non_fatal (_("data size %ld"), (long) (lim - (char *) &environ));
> }
> #endif
> +#endif
Enable code on machine specific macro is not recommended by the GNU standard.
Also note that sbrk is also used by gas.
Maybe the test of sbrk in configure should be done using warnings flags.
(the work-around is to configure using --disable-werror).
Regards,
Tristan.