From 8fb9488054ecce8ec2fdd03713a658949d6ab38e Mon Sep 17 00:00:00 2001 From: "Pedro F. Giffuni" Date: Fri, 4 Apr 2014 15:49:23 +0000 Subject: [PATCH] gcc: define __block when block support is enabled This mimics the behaviour in clang and lets us build cleanly the libdispatch port on platforms where the base gcc is still the default compiler. Bump __FreeBSD_version for ports. Tested by: theraven MFC after: 3 days --- contrib/gcc/c-cppbuiltin.c | 5 ++++- sys/sys/param.h | 2 +- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/contrib/gcc/c-cppbuiltin.c b/contrib/gcc/c-cppbuiltin.c index 6dd6e18b6e0d..6b65cdf55571 100644 --- a/contrib/gcc/c-cppbuiltin.c +++ b/contrib/gcc/c-cppbuiltin.c @@ -504,7 +504,10 @@ c_cpp_builtins (cpp_reader *pfile) /* APPLE LOCAL begin blocks */ /* APPLE LOCAL radar 5868913 */ if (flag_blocks) - cpp_define (pfile, "__BLOCKS__=1"); + { + cpp_define (pfile, "__block=__attribute__((__blocks__(byref)))"); + cpp_define (pfile, "__BLOCKS__=1"); + } /* APPLE LOCAL end blocks */ if (optimize_size) cpp_define (pfile, "__OPTIMIZE_SIZE__"); diff --git a/sys/sys/param.h b/sys/sys/param.h index cc03830fa999..3c64e9411bce 100644 --- a/sys/sys/param.h +++ b/sys/sys/param.h @@ -58,7 +58,7 @@ * in the range 5 to 9. */ #undef __FreeBSD_version -#define __FreeBSD_version 1100016 /* Master, propagated to newvers */ +#define __FreeBSD_version 1100017 /* Master, propagated to newvers */ /* * __FreeBSD_kernel__ indicates that this system uses the kernel of FreeBSD,