al45tair added a comment. In D135273#3942011 <https://reviews.llvm.org/D135273#3942011>, @theraven wrote:
> In D135273#3936297 <https://reviews.llvm.org/D135273#3936297>, @al45tair > wrote: > >> @theraven Any chance you could glance over this and reassure us that it >> isn't going to break the GNU runtime if we do this? (We're adding an extra >> attribute in the property attribute string so that we can detect `@optional` >> properties in ObjC protocols at runtime.) > > It shouldn't, we ignore any unknown property attributes. I'd be more > concerned about code outside the runtime. Lots of things parse encoding > strings badly, but the property APIs make it much easier to query known > attributes and so I think that's a lot lower risk than changing anything in > encoding strings. It's a shame to use ?, since that is unknown type in type > encodings and that may confuse some parsers.. I don't think using `?` is really an issue here; anyone parsing types from these strings already has to stop for the `,` character, since the string is defined to be a `,`-separated list of attributes, the first of which is the type attribute `T<type encoding>`. If they were going to be confused by the `?`, then they'd already get confused by the other attribute characters, many of which are also valid in a type encoding. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D135273/new/ https://reviews.llvm.org/D135273 _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits