hlopko accepted this revision.
hlopko added a comment.
This revision is now accepted and ready to land.

Thanks for pushing this forward!

Current proposal seems to be only dealing with annotating ObjC for Swift, but 
API notes seem like a feature that would be useful for other languages as well. 
I briefly chatted with gribozavr and we concluded that if the need arises, the 
current design should be extensible to e.g. C++ (one of the bigger problems 
being how to name C++ function/overload sets).



================
Comment at: clang/docs/APINotes.rst:187-190
+  - "N"onnull (``_Nonnull``)
+  - "O"ptional (``_Nullable``)
+  - "U"nspecified (``_Null_unspecified``)
+  - "S"calar (deprecated)
----------------
compnerd wrote:
> rsmith wrote:
> > Is it important that these are single letters? Spelling out the name in 
> > full (as you do for other enumerated values like `MethodKind` and 
> > `PropertyKind`) would seem a little more readable. (We could accept the 
> > single-letter forms as aliases.)
> I don't think that they be single letters is important.  As long as we have 
> the compatibility aliases, I think it should be fine to support the fully 
> spelt out versions, as the compatibility is needed for existing APINotes.
+1, this is the only attribute that is abbreviated.


================
Comment at: clang/docs/APINotes.rst:216
+    Due to a compiler bug, 'NullabilityOfRet' may change nullability of the
+    parameters as well (rdar://30544062). Avoid using it and instead use
+    'ResultType' and specify the return type along with a nullability
----------------
Could we get more context from the Apple bug tracker? Depending on the details 
it might be reasonable to drop NullabilityOfRet attribute completely, or more 
precisely document when it should be used.


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D88446/new/

https://reviews.llvm.org/D88446

_______________________________________________
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to