Fine by me too :) On Jul 23, 2015 10:58 PM, "John McCall" <[email protected]> wrote:
> > On Jul 23, 2015, at 10:01 PM, AlexDenisov <[email protected]> wrote: > > Added a bit more documentation for objc_boxable. > > Could you, please, check it in the release_37? > > This is fine by me, but I think technically you might need Richard’s > approval. > > John. > > > > >> On 23 Jul 2015, at 23:53, Alex Denisov <[email protected]> wrote: > >> > >> Author: alexdenisov > >> Date: Thu Jul 23 16:53:13 2015 > >> New Revision: 243048 > >> > >> URL: http://llvm.org/viewvc/llvm-project?rev=243048&view=rev > >> Log: > >> Add documentation for the objc_boxable attribute > >> > >> Modified: > >> cfe/trunk/include/clang/Basic/Attr.td > >> cfe/trunk/include/clang/Basic/AttrDocs.td > >> > >> Modified: cfe/trunk/include/clang/Basic/Attr.td > >> URL: > http://llvm.org/viewvc/llvm-project/cfe/trunk/include/clang/Basic/Attr.td?rev=243048&r1=243047&r2=243048&view=diff > >> > ============================================================================== > >> --- cfe/trunk/include/clang/Basic/Attr.td (original) > >> +++ cfe/trunk/include/clang/Basic/Attr.td Thu Jul 23 16:53:13 2015 > >> @@ -1143,7 +1143,7 @@ def ObjCRuntimeName : Attr { > >> def ObjCBoxable : Attr { > >> let Spellings = [GNU<"objc_boxable">]; > >> let Subjects = SubjectList<[Record], ErrorDiag, > "ExpectedStructOrUnion">; > >> - let Documentation = [Undocumented]; > >> + let Documentation = [ObjCBoxableDocs]; > >> } > >> > >> def OptimizeNone : InheritableAttr { > >> > >> Modified: cfe/trunk/include/clang/Basic/AttrDocs.td > >> URL: > http://llvm.org/viewvc/llvm-project/cfe/trunk/include/clang/Basic/AttrDocs.td?rev=243048&r1=243047&r2=243048&view=diff > >> > ============================================================================== > >> --- cfe/trunk/include/clang/Basic/AttrDocs.td (original) > >> +++ cfe/trunk/include/clang/Basic/AttrDocs.td Thu Jul 23 16:53:13 2015 > >> @@ -492,6 +492,34 @@ can only be placed before an @protocol o > >> }]; > >> } > >> > >> +def ObjCBoxableDocs : Documentation { > >> + let Category = DocCatFunction; > >> + let Content = [{ > >> +Structs and unions marked with the ``objc_boxable`` attribute can be > used > >> +with the Objective-C boxed expression syntax, ``@(...)``. > >> + > >> +**Usage**: ``__attribute__((objc_boxable))``. This attribute > >> +can only be placed on a declaration of a trivially-copyable struct or > union: > >> + > >> +.. code-block:: objc > >> + > >> + struct __attribute__((objc_boxable)) some_struct { > >> + int i; > >> + }; > >> + union __attribute__((objc_boxable)) some_union { > >> + int i; > >> + float f; > >> + }; > >> + typedef struct __attribute__((objc_boxable)) _some_struct > some_struct; > >> + > >> + // ... > >> + > >> + some_struct ss; > >> + NSValue *boxed = @(ss); > >> + > >> + }]; > >> +} > >> + > >> def AvailabilityDocs : Documentation { > >> let Category = DocCatFunction; > >> let Content = [{ > >> > >> > >> _______________________________________________ > >> cfe-commits mailing list > >> [email protected] > >> http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits > > > >
_______________________________________________ cfe-commits mailing list [email protected] http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits
