Added a bit more documentation for objc_boxable. Could you, please, check it in the release_37?
> 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
signature.asc
Description: Message signed with OpenPGP using GPGMail
_______________________________________________ cfe-commits mailing list [email protected] http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits
