Commits

Anonymous committed 2d63e1b

ENH: Added __HPACC_USING_MULTIPLIES_IN_FUNCTIONAL fix from vtkstd.

Comments (0)

Files changed (1)

GCC_XML/KWSys/kwsys_stl.hxx.in

 
 #include <@KWSYS_NAMESPACE@/Configure.hxx>
 
+/* Avoid warnings in MSVC standard headers.  */
 #ifdef _MSC_VER
 # pragma warning (push, 1)
 # pragma warning (disable: 4702)
 # pragma warning (disable: 4786)
 #endif
 
+/* The HP standard library defines the functor "times" instead of
+   "multiplies" as specified by C++98 20.3.2 for backward
+   compatibility with earlier specifications.  Defining this macro
+   fixes this behavior.  The name "times" also conflicts with the
+   function declared in sys/times.h on that platform, so we must do
+   this as a work-around anyway.  */
+#if defined(__HP_aCC) && !defined(__HPACC_USING_MULTIPLIES_IN_FUNCTIONAL)
+# define __HPACC_USING_MULTIPLIES_IN_FUNCTIONAL
+# define @KWSYS_NAMESPACE@_DEFINED___HPACC_USING_MULTIPLIES_IN_FUNCTIONAL
+#endif
+
+/* Include the real header.  */
 #include <@KWSYS_STL_HEADER@>
 
+/* Cleanup.  */
+#if defined(@KWSYS_NAMESPACE@_DEFINED___HPACC_USING_MULTIPLIES_IN_FUNCTIONAL)
+# undef @KWSYS_NAMESPACE@_DEFINED___HPACC_USING_MULTIPLIES_IN_FUNCTIONAL
+# undef __HPACC_USING_MULTIPLIES_IN_FUNCTIONAL
+#endif
+
 #ifdef _MSC_VER
 # pragma warning(pop)
 #endif