summaryrefslogtreecommitdiffstats
path: root/private/crt32/iostream/ostrchar.cxx
diff options
context:
space:
mode:
Diffstat (limited to 'private/crt32/iostream/ostrchar.cxx')
-rw-r--r--private/crt32/iostream/ostrchar.cxx39
1 files changed, 39 insertions, 0 deletions
diff --git a/private/crt32/iostream/ostrchar.cxx b/private/crt32/iostream/ostrchar.cxx
new file mode 100644
index 000000000..3e8bb07a2
--- /dev/null
+++ b/private/crt32/iostream/ostrchar.cxx
@@ -0,0 +1,39 @@
+/***
+* ostrchar.cxx - definitions for ostream class operator<<(char) functions.
+*
+* Copyright (c) 1991-1992, Microsoft Corporation. All rights reserved.
+*
+*Purpose:
+* Contains the member function definitions for ostream operator<<(char).
+*
+*Revision History:
+* 09-23-91 KRS Created. Split out from ostream.cxx for granularity.
+*
+*******************************************************************************/
+
+#include <cruntime.h>
+#include <internal.h>
+#include <iostream.h>
+#pragma hdrstop
+
+// note: called inline by char and signed char versions:
+ostream& ostream::operator<<(unsigned char c)
+{
+ if (opfx())
+ {
+ if (x_width)
+ {
+ _WINSTATIC char outc[2];
+ outc[0] = c;
+ outc[1] = '\0';
+ writepad("",outc);
+ }
+ else if (bp->sputc(c)==EOF)
+ {
+ if (bp->overflow(c)==EOF)
+ state |= (badbit|failbit); // fatal error?
+ }
+ osfx();
+ }
+ return *this;
+}