http://gcc.gnu.org/bugzilla/show_bug.cgi?id=51705
--- Comment #20 from Steve Kargl <sgk at troutmask dot apl.washington.edu> 2011-12-30 17:26:30 UTC --- On Fri, Dec 30, 2011 at 10:45:38AM +0000, andreast at gcc dot gnu.org wrote: > With the below 'hack' I'm able to bootstrap on x86_64-*-freebsd10.0. > I'm not sure why my system does not like the original four escape backslashes > in the select and sed line. > > The diff between the sys/cdefs.h and the fixed sys/cdefs.h looks like this: > > -#define _Noreturn [[noreturn]] > +#define _Noreturn __dead2 > > + * g++ -std=c++11 defines __cplusplus to 201103L, which lies about > + * the level of support g++ has for the C++11 standard. > + */ > +fix = { > + hackname = cdef_cplusplus; > + mach = "*-*-freebsd10.*"; > + files = sys/cdefs.h; > + select = "\\[\\[noreturn\\]\\]"; > + sed = "s/\\[\\[noreturn\\]\\]/__dead2/"; Are you using bash and GNU sed instead of FreeBSD's sh and sed? When I used the above patterns, the changed file contained #define _Noreturn [[noreturn__dead2]