[#bsl-basic_stringbuf-pbackfail-07]
= xref:bsl.adoc[bsl]::xref:bsl/basic_stringbuf.adoc[basic&lowbar;stringbuf]::pbackfail
:relfileprefix: ../../
:mrdocs:

`pbackfail` overloads

== Synopses

Declared in `&lt;bslstl&lowbar;stringbuf&period;h&gt;`

Tries to back up the input sequence&period;


[source,cpp,subs="verbatim,replacements,macros,-callouts"]
----
virtual
int&lowbar;type
xref:bsl/basic_stringbuf/pbackfail-0d.adoc[pbackfail](int&lowbar;type &lowbar;&lowbar;c = traits&lowbar;type&colon;&colon;eof());
----

[.small]#xref:bsl/basic_stringbuf/pbackfail-0d.adoc[_» more&period;&period;&period;_]#

Put back a character into the input sequence&period;


[source,cpp,subs="verbatim,replacements,macros,-callouts"]
----
virtual
xref:bsl/basic_stringbuf/int_type.adoc[basic&lowbar;stringbuf&lt;CHAR&lowbar;TYPE, CHAR&lowbar;TRAITS, ALLOCATOR&gt;::int&lowbar;type]
xref:bsl/basic_stringbuf/pbackfail-05.adoc[pbackfail](xref:bsl/basic_stringbuf/int_type.adoc[int&lowbar;type] character = traits&lowbar;type&colon;&colon;eof());
----

[.small]#xref:bsl/basic_stringbuf/pbackfail-05.adoc[_» more&period;&period;&period;_]#

== Return Value

* eof() on failure, _some other value_ on success
* the character put back, or `traits&lowbar;type&colon;&colon;eof()` on failure

== Parameters

[cols="1,4"]
|===
| Name| Description
| *&lowbar;&lowbar;c*
| The character to be inserted back into the sequence&period;
| *character*
| character to put back, or `traits&lowbar;type&colon;&colon;eof()`
|===

== Postconditions

* The constraints of `gptr(),` `eback(),` and `pptr()` are the same as for `underflow()&period;`


[.small]#Created with https://www.mrdocs.com[MrDocs]#
