public inbox for gcc-prs@sourceware.org
help / color / mirror / Atom feed
From: "Pétur Runólfsson" <peturr02@ru.is>
To: paolo@gcc.gnu.org
Cc: gcc-prs@gcc.gnu.org,
Subject: RE: libstdc++/9439: filebuf::sputbackc ignores beginning-of-file
Date: Mon, 03 Feb 2003 14:06:00 -0000	[thread overview]
Message-ID: <20030203140600.31158.qmail@sources.redhat.com> (raw)

The following reply was made to PR libstdc++/9439; it has been noted by GNATS.

From: =?iso-8859-1?Q?P=E9tur_Run=F3lfsson?= <peturr02@ru.is>
To: <paolo@gcc.gnu.org>,
	<bkoz@redhat.com>,
	<gcc-bugs@gcc.gnu.org>,
	<nobody@gcc.gnu.org>,
	<gcc-gnats@gcc.gnu.org>
Cc:  
Subject: RE: libstdc++/9439: filebuf::sputbackc ignores beginning-of-file
Date: Mon, 3 Feb 2003 13:56:12 -0000

 Hi,
 >     Hi. I don't think there is a bug here: I cannot find in the
 >     standard a specific prescription for the behaviour you
 >     expect (in particular in 27.5.2.4.4) Can you?
 
 Yes. 27.8.1.4 [lib.filebuf.virtuals] p5 describes how pbackfail may
 put back the character c. The only cases that can apply here are the
 ones starting with
 
   If traits::eq_int_type( c ,traits::eof()) returns false and if the
   function makes a putback position available
 
 The meaning of "a putback position available" is defined in
 27.5.1 [lib.streambuf.reqts] p3
 
   If xnext is not a null pointer and xbeg < xnext for an input
   sequence, then a putback position is available
 
 and 27.5.1 [lib.streambuf.reqts] p2 states that xbeg points to the
 beginning of an array that
 
   represents, [...], a (sub)sequence of characters from the sequence
 
 Finally, "the sequence" is defined in 27.8.1.1 [lib.filebuf] p1
 
   The class basic_filebuf<charT,traits> associates both the input
   sequence and the output sequence with a file.
 
 >     Indeed, sputbackc calls, as expected, pbackfail, which in=20
 > turns calls seekoff (fstream.tcc, line 218) (pay attention
 >     to the preceding comment which means that this specific=20
 > situation was considered and _not_ supposed to lead to an
 >     obvious failure).
 
 I read "at the beginning of the buffer" as simply meaning that
 gptr() =3D=3D eback(), not as "at the beginning of the file".
 
 > The latter call then does _not_ fail and
 >     a put back buffer is created by _M_pback_create(), hosting
 >     the put back char, _exactly as happens_ when __testpb &&
 >     !__testeof && !__testeq, above.=20
 >     I agree that a few widespread implementations behave
 >     differently in this case, but we are, I maintain, in the
 >     realm of implementation defined behaviour.
 >    =20
 >     Paolo.
 >=20
 > http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=3Dview%20audit-trail&
 database=3Dgcc&pr=3D9439
 
 Petur


             reply	other threads:[~2003-02-03 14:06 UTC|newest]

Thread overview: 5+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2003-02-03 14:06 Pétur Runólfsson [this message]
  -- strict thread matches above, loose matches on Subject: below --
2003-02-05 19:23 paolo
2003-02-03 14:26 Paolo Carlini
2003-02-02 17:38 paolo
2003-01-25 12:06 peturr02

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20030203140600.31158.qmail@sources.redhat.com \
    --to=peturr02@ru.is \
    --cc=gcc-prs@gcc.gnu.org \
    --cc=paolo@gcc.gnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).