Hi Martin, > On 4 Jan 2019, at 22:30, Mike Stump <mikest...@comcast.net> wrote: > > On Jan 4, 2019, at 2:03 PM, Martin Sebor <mse...@gmail.com> wrote: >> >> The improved handling of attribute positional arguments added >> in r266195 introduced a regression on Darwin where attribute >> format with the CFString archetype accepts CFString* parameter >> types in positions where only char* would otherwise be allowed. > > You didn't ask Ok? I'll assume you want a review... The darwin bits and the > testsuite bits look fine.
>> >> Index: gcc/doc/extend.texi >> =================================================================== >> --- gcc/doc/extend.texi (revision 267580) >> +++ gcc/doc/extend.texi (working copy) >> @@ -22368,10 +22368,12 @@ bit-fields. See the Solaris man page for @code{cm >> @node Darwin Format Checks >> @subsection Darwin Format Checks >> >> -Darwin targets support the @code{CFString} (or @code{__CFString__}) in the >> format >> -attribute context. Declarations made with such attribution are parsed for >> correct syntax >> -and format argument types. However, parsing of the format string itself is >> currently undefined >> -and is not carried out by this version of the compiler. >> +In addition to the full set of archetypes, Darwin targets also support >> +the @code{CFString} (or @code{__CFString__}) archetype in the @code{format} >> +attribute. Declarations with this archetype are parsed for correct syntax >> +and argument types. However, parsing of the format string itself and >> +validating arguments against it in calls to such functions is currently >> +not performed. >> >> Additionally, @code{CFStringRefs} (defined by the @code{CoreFoundation} >> headers) may >> also be used as format arguments. Note that the relevant headers are only >> likely to be >> I find “archetype(s)” to be an usual (and possibly unfamiliar to many) word for this context. how about: s/archetype in/variant for the/ and then s/with this archetype/with this variant/ in the following sentence. However, just 0.02GBP .. (fixing the fails is more important than bikeshedding the wording). Iain