Date: Sun, 5 Jan 2014 12:45:57 +0100 From: Tijl Coosemans <tijl@FreeBSD.org> To: "Pedro F. Giffuni" <pfg@FreeBSD.org> Cc: svn-src-head@freebsd.org, svn-src-all@freebsd.org, src-committers@freebsd.org Subject: Re: svn commit: r260311 - in head/contrib: gcc gcc/cp gcc/doc gcclibs/include gcclibs/libiberty Message-ID: <20140105124557.5dd8395a@kalimero.tijl.coosemans.org> In-Reply-To: <201401050043.s050hSMI089553@svn.freebsd.org> References: <201401050043.s050hSMI089553@svn.freebsd.org>
next in thread | previous in thread | raw e-mail | index | archive | help
On Sun, 5 Jan 2014 00:43:28 +0000 (UTC) Pedro F. Giffuni wrote: > Author: pfg > Date: Sun Jan 5 00:43:28 2014 > New Revision: 260311 > URL: http://svnweb.freebsd.org/changeset/base/260311 > > Log: > gcc: Add support for Apple's Block extension > > Block objects [1] are a C-level syntactic and runtime feature. They > are similar to standard C functions, but in addition to executable > code they may also contain variable bindings to automatic (stack) > or managed (heap) memory. A block can therefore maintain a set of > state (data) that it can use to impact behavior when executed. > > This port is based on Apple's GCC 5646 with some bugfixes from > Apple GCC 5666.3. It has some small differences with the support > in clang, which remains the recommended compiler. > > Perhaps the most notable difference is that in GCC that __block > is not actually a keyword, but a macro. There will be workaround > for this issue in a near future. Other issues can be consulted in > the clang documentation [2] > > For better compatiblity with Apple's GCC and llvm-gcc some related > fixes and features from Apple have been included. Support for the > non-standard nested functions in GCC is now off by default. Some ports use nested functions.
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20140105124557.5dd8395a>