[PATCH] Use INCLUDE_xxx macros in gcov.c for pulling in standard C++ headers

Jan Hubicka hubicka@ucw.cz
Sun Jan 22 10:05:00 GMT 2017


> Honza, Nathan,
> 
> On Sat, 21 Jan 2017, Dimitry Andric wrote:
> > As discussed with the FreeBSD gcc ports maintainer [1], building trunk
> > gcc with libc++ requires standard C++ headers to be included *before*
> > gcc/system.h, otherwise the redefinition of abort() to fancy_abort()
> > will cause trouble.
> > 
> > In r235362, most gcc C++ sources were updated to define INCLUDE_xxx
> > macros before including gcc/system.h, which fixes the incompatibility
> > with libc++.  However, gcc/gcov.c was apparently missed.  Attached is a
> > patch to update it.
> 
> can you approve this as gcov maintainers?
> 
> Without this, GCC 7 will fail to build with newer versions of 
> Clang/libc++.
> 
> Below you find Dimitry's patch with a ChangeLog I created.  Bootstrapped 
> on x86_64-unknown-freebsd11.0, and I can take care of committing.
> 
> Gerald
> 
> 2017-01-21  Dimitry Andric <dim@FreeBSD.org>
> 
> 	* gcov.c (INCLUDE_ALGORITHM): Define.
> 	(INCLUDE_VECTOR): Define.
> 	No longer include <vector> and <algorithm>.

OK

Honza



More information about the Gcc-patches mailing list