|
|
@@ -28,17 +28,67 @@
|
|
|
# include <iostream.h>
|
|
|
#endif
|
|
|
|
|
|
+// The HP implementation of iostream defines cin, cout, cerr, and clog
|
|
|
+// as macros in order to do thread-private streams.
|
|
|
+// See /opt/aCC/include/iostream/iostream.h for details.
|
|
|
+// This block redefines the macros in a safe way that is also compatible
|
|
|
+// with the HP definitions and the using declarations below.
|
|
|
+
|
|
|
+#if !@KWSYS_NAMESPACE@_IOS_USE_SSTREAM
|
|
|
+# if defined(__HP_aCC) && (defined(HP_THREAD_SAFE) || defined(_THREAD_SAFE))
|
|
|
+# if defined(cin) && !defined(@KWSYS_NAMESPACE@_IOS_HP_HACK_CIN)
|
|
|
+# define @KWSYS_NAMESPACE@_IOS_HP_HACK_CIN
|
|
|
+# undef cin
|
|
|
+# define cin __tcin.ref()
|
|
|
+# endif
|
|
|
+# if defined(cout) && !defined(@KWSYS_NAMESPACE@_IOS_HP_HACK_COUT)
|
|
|
+# define @KWSYS_NAMESPACE@_IOS_HP_HACK_COUT
|
|
|
+# undef cout
|
|
|
+# define cout __tcout.ref()
|
|
|
+# endif
|
|
|
+# if defined(cerr) && !defined(@KWSYS_NAMESPACE@_IOS_HP_HACK_CERR)
|
|
|
+# define @KWSYS_NAMESPACE@_IOS_HP_HACK_CERR
|
|
|
+# undef cerr
|
|
|
+# define cerr __tcerr.ref()
|
|
|
+# endif
|
|
|
+# if defined(clog) && !defined(@KWSYS_NAMESPACE@_IOS_HP_HACK_CLOG)
|
|
|
+# define @KWSYS_NAMESPACE@_IOS_HP_HACK_CLOG
|
|
|
+# undef clog
|
|
|
+# define clog __tclog.ref()
|
|
|
+# endif
|
|
|
+# endif
|
|
|
+#endif
|
|
|
+
|
|
|
+// If using our own sstream emulation code, put the standard
|
|
|
+// streams in the same namespace.
|
|
|
#if !@KWSYS_NAMESPACE@_IOS_USE_SSTREAM
|
|
|
namespace @KWSYS_NAMESPACE@_ios
|
|
|
{
|
|
|
using @KWSYS_NAMESPACE@_ios_namespace::ostream;
|
|
|
using @KWSYS_NAMESPACE@_ios_namespace::istream;
|
|
|
using @KWSYS_NAMESPACE@_ios_namespace::ios;
|
|
|
- using @KWSYS_NAMESPACE@_ios_namespace::cout;
|
|
|
- using @KWSYS_NAMESPACE@_ios_namespace::cerr;
|
|
|
- using @KWSYS_NAMESPACE@_ios_namespace::cin;
|
|
|
using @KWSYS_NAMESPACE@_ios_namespace::endl;
|
|
|
using @KWSYS_NAMESPACE@_ios_namespace::flush;
|
|
|
+# if defined(@KWSYS_NAMESPACE@_IOS_HP_HACK_CIN)
|
|
|
+ using @KWSYS_NAMESPACE@_ios_namespace::__tcin;
|
|
|
+# else
|
|
|
+ using @KWSYS_NAMESPACE@_ios_namespace::cin;
|
|
|
+# endif
|
|
|
+# if defined(@KWSYS_NAMESPACE@_IOS_HP_HACK_COUT)
|
|
|
+ using @KWSYS_NAMESPACE@_ios_namespace::__tcout;
|
|
|
+# else
|
|
|
+ using @KWSYS_NAMESPACE@_ios_namespace::cout;
|
|
|
+# endif
|
|
|
+# if defined(@KWSYS_NAMESPACE@_IOS_HP_HACK_CERR)
|
|
|
+ using @KWSYS_NAMESPACE@_ios_namespace::__tcerr;
|
|
|
+# else
|
|
|
+ using @KWSYS_NAMESPACE@_ios_namespace::cerr;
|
|
|
+# endif
|
|
|
+# if defined(@KWSYS_NAMESPACE@_IOS_HP_HACK_CLOG)
|
|
|
+ using @KWSYS_NAMESPACE@_ios_namespace::__tclog;
|
|
|
+# else
|
|
|
+ using @KWSYS_NAMESPACE@_ios_namespace::clog;
|
|
|
+# endif
|
|
|
}
|
|
|
#endif
|
|
|
|