r243048 - Add documentation for the objc_boxable attribute

Richard Smith richard at metafoo.co.uk
Thu Jul 23 23:07:51 PDT 2015


Fine by me too :)
On Jul 23, 2015 10:58 PM, "John McCall" <rjmccall at apple.com> wrote:

> > On Jul 23, 2015, at 10:01 PM, AlexDenisov <1101.debian at gmail.com> 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 <1101.debian at gmail.com> 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
> >> cfe-commits at cs.uiuc.edu
> >> http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits
> >
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/cfe-commits/attachments/20150723/652e767d/attachment.html>


More information about the cfe-commits mailing list