streambuf performance 200x

Martin Sebor sebor@roguewave.com
Fri Feb 14 22:51:00 GMT 2003


Nathan Myers wrote:
...
>>I'm sorry to get sidetracked by this, but I must respectfully
>>disagree. Besides the interface, the value of palloc is only
>>mentioned in Tables 101, 102, and 103. 
> 
> 
> I believe those tables are normative.

Yes, but all they say is to what values those members should be
initialized, not what they mean. How they should be interpreted
is only in the notes.

> 
> 
>>What it's used for is
>>only explained in the non-normative Note(s) in D.7.1, p3 and
>>D.7.1.3, p3.  If, as you say below, non-normative text doesn't
>>present any new requirements, there is no requirement at all
>>on what palloc is supposed be used for. And the same is also
>>true for constant, and for the effects of the frozen bit on
>>the output sequence.
> 
> 
> The second of those is normative.  Only the text in square brackets
> like "[Note: ... --end note] is non-normative.  The "Notes:" 
> sections of function descriptions are normative.  See 1.5p6.
> Just because it says "Notes:" doesn't make it an ISO "note". :-P

1.5, p6 just says how examples and notes are denoted, not how
they should be interpreted. I believe 17.3.1.1, p2 is the
relevant text:

     Paragraphs labelled ‘‘Note(s):’’ or ‘‘Example(s):’’ are
     informative, other paragraphs are normative.

> 
> 
>>This isn't the only example. To give you another, the Note in
>>20.4.1.1, p3 says that allocator::allocate() uses operator new().
>>There is no normative requirement that allocate() do so. ...
> 
> 
> Likewise.

No. See 17.3.1.1, p2.

Martin



More information about the Libstdc++ mailing list