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

Reply via email to