summaryrefslogtreecommitdiff
path: root/ace/IOStream.h
diff options
context:
space:
mode:
Diffstat (limited to 'ace/IOStream.h')
-rw-r--r--ace/IOStream.h22
1 files changed, 22 insertions, 0 deletions
diff --git a/ace/IOStream.h b/ace/IOStream.h
index c1ecb5c9604..d98e8a3b399 100644
--- a/ace/IOStream.h
+++ b/ace/IOStream.h
@@ -344,6 +344,16 @@ typedef ostream& (*__omanip_)(ostream&);
// operators. Notice how the ipfx() and isfx() functions are used.
#define GET_SIG(MT,DT) inline virtual MT& operator>> (DT v)
+#if defined (__KCC)
+#define GET_CODE { \
+ if (ipfx (0)) \
+ { \
+ (*((istream*)this)) >> (v); \
+ } \
+ isfx (); \
+ return *this; \
+ }
+#else
#define GET_CODE { \
if (ipfx (0)) \
{ \
@@ -352,6 +362,7 @@ typedef ostream& (*__omanip_)(ostream&);
isfx (); \
return *this; \
}
+#endif /* __KCC */
#define GET_PROT(MT,DT,CODE) GET_SIG(MT,DT) CODE
#define GET_FUNC(MT,DT) GET_PROT(MT,DT,GET_CODE)
@@ -360,6 +371,16 @@ typedef ostream& (*__omanip_)(ostream&);
// operators. Notice how the opfx() and osfx() functions are used.
#define PUT_SIG(MT,DT) inline virtual MT& operator<< (DT v)
+#if defined (__KCC)
+#define PUT_CODE { \
+ if (opfx ()) \
+ { \
+ (*((ostream *) this)) << (v); \
+ } \
+ osfx (); \
+ return *this; \
+ }
+#else
#define PUT_CODE { \
if (opfx ()) \
{ \
@@ -368,6 +389,7 @@ typedef ostream& (*__omanip_)(ostream&);
osfx (); \
return *this; \
}
+#endif /* __KCC */
#define PUT_PROT(MT,DT,CODE) PUT_SIG(MT,DT) CODE
#define PUT_FUNC(MT,DT) PUT_PROT(MT,DT,PUT_CODE)