PING [PATCH] mention disabling GCC built-ins for customization
Martin Sebor
msebor@gmail.com
Wed Jun 27 23:37:00 GMT 2018
Ping: https://sourceware.org/ml/libc-alpha/2018-06/msg00428.html
If there are no further comments I'd like to commit this change
later this week.
On 06/14/2018 01:11 PM, Martin Sebor wrote:
> On 06/14/2018 01:25 AM, Andreas Schwab wrote:
>> On Jun 13 2018, Martin Sebor <msebor@gmail.com> wrote:
>>
>>> diff --git a/manual/stdio.texi b/manual/stdio.texi
>>> index 38be236..d945955 100644
>>> --- a/manual/stdio.texi
>>> +++ b/manual/stdio.texi
>>> @@ -2963,7 +2963,11 @@ The facilities of this section are declared in
>>> the header file
>>>
>>> @strong{Portability Note:} The ability to extend the syntax of
>>> @code{printf} template strings is a GNU extension. ISO standard C has
>>> -nothing similar.
>>> +nothing similar. When using the GNU C compiler or any other compiler
>>> +that interprets calls to standard I/O functions according to the rules
>>> +of the language standard it is necessary to disable such handling by
>>> +the appropriate compiler option. Otherwise the behavior of a program
>>> +that relies on the extension is undefined.
>>
>> The manual already says that redefining existing conversions causes
>> problems:
>>
>> You can redefine the standard output conversions, but this is
>> probably
>> not a good idea because of the potential for confusion. Library
>> routines
>> written by other people could break if you do this.
>>
>> We should extend that with a stronger language, independent of any
>> compiler behaviour.
>
> That sounds fine to me. Attached is an updated patch that also
> adds text to this paragraph. I added a Portability Note before
> the text to highlight the portability impact, similarly to
> the prior paragraph.
>
> Martin
More information about the Libc-alpha
mailing list