Index: trunk/psLib/src/sys/psAbort.h
===================================================================
--- trunk/psLib/src/sys/psAbort.h	(revision 13950)
+++ trunk/psLib/src/sys/psAbort.h	(revision 14452)
@@ -10,6 +10,6 @@
  *  @author Joshua Hoblitt, University of Hawaii
  *
- *  $Revision: 1.14 $ $Name: not supported by cvs2svn $
- *  $Date: 2007-02-07 23:52:54 $
+ *  $Revision: 1.15 $ $Name: not supported by cvs2svn $
+ *  $Date: 2007-08-09 01:40:07 $
  *  Copyright 2004-2005 Maui High Performance Computing Center, University of Hawaii
  */
@@ -22,4 +22,6 @@
 
 #include <stdarg.h>
+
+#include "psType.h"
 
 /** Reports an abort message to logging facility
@@ -45,9 +47,5 @@
     const char *format,                 ///< A printf style formatting statement
     ...
-#ifdef __GNUC__
-) __attribute__((format(printf, 4, 5), noreturn));
-#else // ifdef __GNUC__
-);
-#endif // ifdef __GNUC__
+) PS_ATTR_FORMAT(printf, 4, 5) PS_ATTR_NORETURN;
 #ifndef SWIG
 #define psAbort(...) \
Index: trunk/psLib/src/sys/psError.h
===================================================================
--- trunk/psLib/src/sys/psError.h	(revision 13950)
+++ trunk/psLib/src/sys/psError.h	(revision 14452)
@@ -12,6 +12,6 @@
  *  @author Joshua Hoblitt, University of Hawaii
  *
- *  @version $Revision: 1.35 $ $Name: not supported by cvs2svn $
- *  @date $Date: 2007-02-08 01:59:28 $
+ *  @version $Revision: 1.36 $ $Name: not supported by cvs2svn $
+ *  @date $Date: 2007-08-09 01:40:07 $
  *
  *  Copyright 2004-2005 Maui High Performance Computing Center, University of Hawaii
@@ -28,4 +28,5 @@
 #include<stdarg.h>
 
+#include "psType.h"
 #include "psErrorCodes.h"
 
@@ -101,10 +102,5 @@
     const char* format,                ///< printf-style format of header line
     ...                                ///< any parameters required in format
-#ifdef __GNUC__
-) __attribute__((format(printf, 2, 3)));
-#else // ifdef __GNUC__
-);
-#endif // ifdef __GNUC__
-
+) PS_ATTR_FORMAT(printf, 2, 3);
 
 #ifndef SWIG
@@ -151,9 +147,5 @@
     const char* format,                ///< printf-style format of header line
     ...                                ///< any parameters required in format
-#ifdef __GNUC__
-) __attribute__((format(printf, 6, 7)));
-#else // ifdef __GNUC__
-);
-#endif // ifdef __GNUC__
+) PS_ATTR_FORMAT(printf, 6, 7);
 #ifndef SWIG
 #define psError(code,new,...) \
@@ -182,9 +174,5 @@
     const char* format,                ///< printf-style format of header line
     ...                                ///< any parameters required in format
-#ifdef __GNUC__
-) __attribute__((format(printf, 4, 5)));
-#else // ifdef __GNUC__
-);
-#endif // ifdef __GNUC__
+) PS_ATTR_FORMAT(printf, 4, 5);
 #ifndef SWIG
 #define psWarning(...) \
@@ -204,5 +192,5 @@
     psErrorCode code,                  ///< Error class code
     const char* msg                    ///< Error message
-);
+) PS_ATTR_MALLOC;
 
 /// @}
Index: trunk/psLib/src/sys/psLine.h
===================================================================
--- trunk/psLib/src/sys/psLine.h	(revision 13950)
+++ trunk/psLib/src/sys/psLine.h	(revision 14452)
@@ -9,6 +9,6 @@
  *  @author David Robbins, MHPCC
  *
- *  @version $Revision: 1.7 $ $Name: not supported by cvs2svn $
- *  @date $Date: 2007-02-08 01:59:28 $
+ *  @version $Revision: 1.8 $ $Name: not supported by cvs2svn $
+ *  @date $Date: 2007-08-09 01:40:07 $
  *
  *  Copyright 2004-2005 Maui High Performance Computing Center, University of Hawaii
@@ -37,5 +37,5 @@
 psLine *psLineAlloc(
     long Nline                         ///< length of line object to allocate
-);
+) PS_ATTR_MALLOC;
 
 
@@ -74,9 +74,5 @@
     const char *format,                ///< printf-style format of line
     ...                                ///< any parameters required in format
-#ifdef __GNUC__
-) __attribute__((format(printf, 2, 3)));
-#else // ifdef __GNUC__
-);
-#endif // ifdef __GNUC__
+) PS_ATTR_FORMAT(printf, 2, 3);
 
 
Index: trunk/psLib/src/sys/psLogMsg.h
===================================================================
--- trunk/psLib/src/sys/psLogMsg.h	(revision 13950)
+++ trunk/psLib/src/sys/psLogMsg.h	(revision 14452)
@@ -11,6 +11,6 @@
  *  @author Joshua Hoblitt, University of Hawaii
  *
- *  @version $Revision: 1.39 $ $Name: not supported by cvs2svn $
- *  @date $Date: 2007-02-08 01:59:28 $
+ *  @version $Revision: 1.40 $ $Name: not supported by cvs2svn $
+ *  @date $Date: 2007-08-09 01:40:07 $
  *
  *  Copyright 2004-2005 Maui High Performance Computing Center, University of Hawaii
@@ -120,9 +120,5 @@
     const char *format,                ///< printf-style format command
     ...
-#ifdef __GNUC__
-) __attribute__((format(printf, 3, 4)));
-#else // ifdef __GNUC__
-);
-#endif // ifdef __GNUC__
+) PS_ATTR_FORMAT(printf, 3, 4);
 
 
Index: trunk/psLib/src/sys/psString.h
===================================================================
--- trunk/psLib/src/sys/psString.h	(revision 13950)
+++ trunk/psLib/src/sys/psString.h	(revision 14452)
@@ -11,6 +11,6 @@
  * @author Joshua Hoblitt, University of Hawaii
  *
- * @version $Revision: 1.41 $ $Name: not supported by cvs2svn $
- * @date $Date: 2007-04-18 19:37:08 $
+ * @version $Revision: 1.42 $ $Name: not supported by cvs2svn $
+ * @date $Date: 2007-08-09 01:40:07 $
  *
  * Copyright 2004-2005 Maui High Performance Computing Center, University of Hawaii
@@ -25,4 +25,5 @@
 #include <sys/types.h>
 #include <stdarg.h>
+
 #include "psType.h"
 #include "psList.h"
@@ -32,9 +33,9 @@
 
 /** This macro returns a (static buffer containing) "file:line" */
+const char *p_psFileLine(const char *file, int line)
 #ifdef __GNUC__
-const char *p_psFileLine(const char *file, int line) __attribute__((deprecated));
-#else // ifdef __GNUC__
-const char *p_psFileLine(const char *file, int line);
+__attribute__((deprecated))
 #endif // ifdef __GNUC__
+;
 #define PS_FILE_LINE p_psFileLine(__FILE__,__LINE__)
 
@@ -54,5 +55,5 @@
     const char *func,                   ///< Function name of caller
     size_t nChar                        ///< Size of psString to allocate.
-);
+) PS_ATTR_MALLOC;
 #define psStringAlloc(nChar) \
       p_psStringAlloc(__FILE__, __LINE__, __func__, nChar)
@@ -147,9 +148,5 @@
     const char *format,                 ///< format to append
     ...                                 ///< format arguments
-#ifdef __GNUC__
-) __attribute__((format(printf, 5, 6)));
-#else // ifdef __GNUC__
-);
-#endif // ifdef __GNUC__
+) PS_ATTR_FORMAT(printf, 5, 6);
 #define psStringAppend(dest, ...) \
       p_psStringAppend(__FILE__, __LINE__, __func__, dest, __VA_ARGS__)
@@ -205,9 +202,5 @@
     const char *format,                 ///< format to append
     ...                                 ///< format arguments
-#ifdef __GNUC__
-) __attribute__((format(printf, 5, 6)));
-# else // ifdef __GNUC__
-);
-#endif // ifdef __GNUC__
+) PS_ATTR_FORMAT(printf, 5, 6);
 #define psStringPrepend(dest, ...) \
       p_psStringPrepend(__FILE__, __LINE__, __func__, dest, __VA_ARGS__)
Index: trunk/psLib/src/sys/psTrace.h
===================================================================
--- trunk/psLib/src/sys/psTrace.h	(revision 13950)
+++ trunk/psLib/src/sys/psTrace.h	(revision 14452)
@@ -9,6 +9,6 @@
  *  @author GLG, MHPCC
  *
- *  @version $Revision: 1.58 $ $Name: not supported by cvs2svn $
- *  @date $Date: 2007-03-19 22:26:22 $
+ *  @version $Revision: 1.59 $ $Name: not supported by cvs2svn $
+ *  @date $Date: 2007-08-09 01:40:07 $
  *
  *  Copyright 2004-2005 Maui High Performance Computing Center, University of Hawaii
@@ -100,9 +100,5 @@
     const char *format,                ///< printf-style format command
     ...                                ///< trace message arguments
-#ifdef __GNUC__
-) __attribute__((format(printf, 6, 7)));
-#else // ifdef __GNUC__
-);
-#endif // ifdef __GNUC__
+) PS_ATTR_FORMAT(printf, 6, 7);
 #ifndef SWIG
 #define psTrace(facil, level, ...) \
Index: trunk/psLib/src/sys/psType.h
===================================================================
--- trunk/psLib/src/sys/psType.h	(revision 13950)
+++ trunk/psLib/src/sys/psType.h	(revision 14452)
@@ -10,6 +10,6 @@
 *  @author Ross Harman, MHPCC
 *
-*  @version $Revision: 1.59 $ $Name: not supported by cvs2svn $
-*  @date $Date: 2007-03-14 04:08:13 $
+*  @version $Revision: 1.60 $ $Name: not supported by cvs2svn $
+*  @date $Date: 2007-08-09 01:40:07 $
 *
 *  Copyright 2004-2005 Maui High Performance Computing Center, University of Hawaii
@@ -243,4 +243,22 @@
 #define PSELEMTYPE_SIZEOF(x) (x & 0xFF)
 
+#ifdef __GNUC__
+#define PS_ATTR_MALLOC __attribute__((__malloc__))
+#else // __GNUC__
+#define PS_ATTR_MALLOC
+#endif // __GNUC__
+
+#ifdef __GNUC__
+#define PS_ATTR_NORETURN __attribute__((noreturn))
+#else // __GNUC__
+#define PS_ATTR_NORETURN
+#endif // __GNUC__
+
+#ifdef __GNUC__
+#define PS_ATTR_FORMAT(style, start, end) __attribute__((format(style, start, end)))
+#else // __GNUC__
+#define PS_ATTR_FORMAT(style, start, end)
+#endif // __GNUC__
+
 /** Dimensions of a data type.
  *
