Index: trunk/psLib/src/astro/psCoord.h
===================================================================
--- trunk/psLib/src/astro/psCoord.h	(revision 14440)
+++ trunk/psLib/src/astro/psCoord.h	(revision 14452)
@@ -8,6 +8,6 @@
  *  @author GLG, MHPCC
  *
- *  @version $Revision: 1.60 $ $Name: not supported by cvs2svn $
- *  @date $Date: 2007-06-15 01:03:22 $
+ *  @version $Revision: 1.61 $ $Name: not supported by cvs2svn $
+ *  @date $Date: 2007-08-09 01:40:07 $
  *
  *  Copyright 2004-2005 Maui High Performance Computing Center, University of Hawaii
@@ -157,5 +157,5 @@
  *  @return psPlane*     resulting plane structure.
  */
-psPlane* psPlaneAlloc(void);
+psPlane* psPlaneAlloc(void) PS_ATTR_MALLOC;
 
 /** Allocates a psSphere
@@ -163,5 +163,5 @@
  *  @return psSphere*     resulting sphere structure.
  */
-psSphere* psSphereAlloc(void);
+psSphere* psSphereAlloc(void) PS_ATTR_MALLOC;
 
 /** Allocates a psCube
@@ -169,5 +169,5 @@
  *  @return psCube*     resulting cubic structure.
  */
-psCube* psCubeAlloc(void);
+psCube* psCubeAlloc(void) PS_ATTR_MALLOC;
 
 /** Allocates a psPlaneTransform transform.
@@ -179,5 +179,5 @@
     int order1,                        ///< The order of the x term in the transform.
     int order2                         ///< The order of the y term in the transform.
-);
+) PS_ATTR_MALLOC;
 
 /** Applies the psPlaneTransform transform to a specified coordinate
@@ -201,5 +201,5 @@
     int order3,                        ///< The order of the y term in the transform.
     int order4                         ///< The order of the z term in the transform.
-);
+) PS_ATTR_MALLOC;
 
 
@@ -226,5 +226,5 @@
     double Ys,                         ///< Scale in y-dimension
     psProjectionType type
-);
+) PS_ATTR_MALLOC;
 
 /** Checks the type of a particular pointer.
Index: trunk/psLib/src/astro/psEarthOrientation.h
===================================================================
--- trunk/psLib/src/astro/psEarthOrientation.h	(revision 14440)
+++ trunk/psLib/src/astro/psEarthOrientation.h	(revision 14452)
@@ -8,6 +8,6 @@
 *  @author Robert Daniel DeSonia, MHPCC
 *
-*  @version $Revision: 1.18 $ $Name: not supported by cvs2svn $
-*  @date $Date: 2007-03-14 02:31:41 $
+*  @version $Revision: 1.19 $ $Name: not supported by cvs2svn $
+*  @date $Date: 2007-08-09 01:40:07 $
 *
 *  Copyright 2005 Maui High Performance Computing Center, University of Hawaii
@@ -63,5 +63,5 @@
 
 /** Allocates a new psEarthPole structure.  */
-psEarthPole *psEarthPoleAlloc(void);
+psEarthPole *psEarthPoleAlloc(void) PS_ATTR_MALLOC;
 
 /** Calculates the apparent position of a star, given its actual position and the
Index: trunk/psLib/src/astro/psSphereOps.h
===================================================================
--- trunk/psLib/src/astro/psSphereOps.h	(revision 14440)
+++ trunk/psLib/src/astro/psSphereOps.h	(revision 14452)
@@ -6,6 +6,6 @@
  *  @author David Robbins, MHPCC
  *
- *  @version $Revision: 1.12 $ $Name: not supported by cvs2svn $
- *  @date $Date: 2007-01-23 22:47:22 $
+ *  @version $Revision: 1.13 $ $Name: not supported by cvs2svn $
+ *  @date $Date: 2007-08-09 01:40:07 $
  *
  *  Copyright 2004-2005 Maui High Performance Computing Center, University of Hawaii
@@ -69,5 +69,5 @@
     double deltaP,                     ///< north pole longitude
     double phiP                        ///< defines the longitude in the input system of the equatorial intersection between the two systems (e.g, the first point of Ares).
-);
+) PS_ATTR_MALLOC;
 
 /** Checks the type of a particular pointer.
Index: trunk/psLib/src/astro/psTime.h
===================================================================
--- trunk/psLib/src/astro/psTime.h	(revision 14440)
+++ trunk/psLib/src/astro/psTime.h	(revision 14452)
@@ -11,6 +11,6 @@
  *  @author Ross Harman, MHPCC
  *
- *  @version $Revision: 1.56 $ $Name: not supported by cvs2svn $
- *  @date $Date: 2007-06-22 02:28:48 $
+ *  @version $Revision: 1.57 $ $Name: not supported by cvs2svn $
+ *  @date $Date: 2007-08-09 01:40:07 $
  *
  *  Copyright 2004-2005 Maui High Performance Computing Center, University of Hawaii
@@ -108,5 +108,5 @@
 psTime* psTimeAlloc(
     psTimeType type                    ///< Type of time to create (UTC or TAI).
-);
+) PS_ATTR_MALLOC;
 
 
Index: trunk/psLib/src/db/psDB.h
===================================================================
--- trunk/psLib/src/db/psDB.h	(revision 14440)
+++ trunk/psLib/src/db/psDB.h	(revision 14452)
@@ -7,6 +7,6 @@
  * @author Joshua Hoblitt
  *
- * @version $Revision: 1.35 $ $Name: not supported by cvs2svn $
- * @date $Date: 2007-03-01 03:57:08 $
+ * @version $Revision: 1.36 $ $Name: not supported by cvs2svn $
+ * @date $Date: 2007-08-09 01:40:07 $
  *
  * Copyright 2005 Joshua Hoblitt, University of Hawaii
@@ -45,5 +45,5 @@
     const char *dbname,                ///< Database namespace
     unsigned int port                  ///< Database port number
-);
+) PS_ATTR_MALLOC;
 
 /** Opens a new database connection
@@ -115,18 +115,9 @@
  * @return bool:    true on success
  */
-#ifdef __GNUC__
 bool p_psDBRunQuery(
     psDB *dbh,                         ///< Database handle
     const char *format,                ///< SQL string to execute
     ...                                ///< Arguments for name formatting and metadata item data.
-) __attribute__((format(printf, 2, 3)));
-
-#else // __GNUC__
-bool p_psDBRunQuery(
-    psDB *dbh,                         ///< Database handle
-    const char *format,                ///< SQL string to execute
-    ...                                ///< Arguments for name formatting and metadata item data.
-);
-#endif // __GNUC__
+) PS_ATTR_FORMAT(printf, 2, 3);
 
 /** Executes a SQL query as a prepared statement
@@ -138,5 +129,4 @@
  * @return long:    the number of database rows affected
  */
-#ifdef __GNUC__
 long p_psDBRunQueryPrepared(
     psDB *dbh,                          ///< Database handle
@@ -144,13 +134,5 @@
     const char *format,                 ///< SQL string to execute
     ...
-) __attribute__((format(printf, 3, 4)));
-#else // __GNUC__
-long p_psDBRunQueryPrepared(
-    psDB *dbh,                          ///< Database handle
-    const psArray *rowSet,              ///< row data as psArray of psMetadata
-    const char *format,                 ///< SQL string to execute
-    ...
-);
-#endif // __GNUC__
+) PS_ATTR_FORMAT(printf, 3, 4);
 
 /** Fetches the result of a SQL query
Index: trunk/psLib/src/imageops/psImageBinning.h
===================================================================
--- trunk/psLib/src/imageops/psImageBinning.h	(revision 14440)
+++ trunk/psLib/src/imageops/psImageBinning.h	(revision 14452)
@@ -8,6 +8,6 @@
  *  @author Eugene Magnier, IfA
  *
- *  @version $Revision: 1.1 $ $Name: not supported by cvs2svn $
- *  @date $Date: 2007-03-27 02:43:22 $
+ *  @version $Revision: 1.2 $ $Name: not supported by cvs2svn $
+ *  @date $Date: 2007-08-09 01:40:07 $
  *
  *  Copyright 2007 Institute for Astronomy, University of Hawaii
@@ -42,5 +42,5 @@
 
 
-psImageBinning *psImageBinningAlloc();
+psImageBinning *psImageBinningAlloc() PS_ATTR_MALLOC;
 
 void psImageBinningSetRuffSize(psImageBinning *binning, psImageBinningAlign align);
Index: trunk/psLib/src/imageops/psImageConvolve.h
===================================================================
--- trunk/psLib/src/imageops/psImageConvolve.h	(revision 14440)
+++ trunk/psLib/src/imageops/psImageConvolve.h	(revision 14452)
@@ -5,6 +5,6 @@
  * @author Robert DeSonia, MHPCC
  *
- * @version $Revision: 1.21 $ $Name: not supported by cvs2svn $
- * @date $Date: 2007-07-20 20:12:31 $
+ * @version $Revision: 1.22 $ $Name: not supported by cvs2svn $
+ * @date $Date: 2007-08-09 01:40:07 $
  * Copyright 2004-2005 Maui High Performance Computing Center, University of Hawaii
  */
@@ -68,5 +68,5 @@
     int yMin,                          ///< Most negative y index
     int yMax                           ///< Most positive y index
-);
+) PS_ATTR_MALLOC;
 
 /// Checks the type of a particular pointer.
Index: trunk/psLib/src/imageops/psImageInterpolate.h
===================================================================
--- trunk/psLib/src/imageops/psImageInterpolate.h	(revision 14440)
+++ trunk/psLib/src/imageops/psImageInterpolate.h	(revision 14452)
@@ -7,6 +7,6 @@
  * @author Paul Price, Institute for Astronomy
  *
- * @version $Revision: 1.2 $ $Name: not supported by cvs2svn $
- * @date $Date: 2007-05-23 02:55:01 $
+ * @version $Revision: 1.3 $ $Name: not supported by cvs2svn $
+ * @date $Date: 2007-08-09 01:40:07 $
  * Copyright 2004-2007 Institute for Astronomy, University of Hawaii
  */
@@ -67,5 +67,5 @@
                                                           psMaskType poorMask, // Mask value for poor pixels
                                                           float poorFrac // Fraction of flux for question
-    );
+    ) PS_ATTR_MALLOC;
 
 
Index: trunk/psLib/src/jpeg/psImageJpeg.h
===================================================================
--- trunk/psLib/src/jpeg/psImageJpeg.h	(revision 14440)
+++ trunk/psLib/src/jpeg/psImageJpeg.h	(revision 14452)
@@ -3,6 +3,6 @@
  * 
  * @author EAM
- * @version $Revision: 1.2 $ $Name: not supported by cvs2svn $
- * @date $Date: 2007-01-23 22:47:23 $
+ * @version $Revision: 1.3 $ $Name: not supported by cvs2svn $
+ * @date $Date: 2007-08-09 01:40:07 $
  */
 
@@ -28,5 +28,5 @@
 
 // allocate a colormap (does not define the map values)
-psImageJpegColormap *psImageJpegColormapAlloc();
+psImageJpegColormap *psImageJpegColormapAlloc() PS_ATTR_MALLOC;
 
 // set the colormap values using the supplied name
Index: trunk/psLib/src/math/psClip.h
===================================================================
--- trunk/psLib/src/math/psClip.h	(revision 14440)
+++ trunk/psLib/src/math/psClip.h	(revision 14452)
@@ -4,6 +4,6 @@
  * @author Paul Price, IfA.
  *
- * $Revision: 1.4 $ $Name: not supported by cvs2svn $
- * $Date: 2007-05-21 21:50:34 $
+ * $Revision: 1.5 $ $Name: not supported by cvs2svn $
+ * $Date: 2007-08-09 01:40:07 $
  * Copyright 2007 Institute for Astronomy, University of Hawaii
  */
@@ -37,5 +37,5 @@
                                 psMaskType masked, ///< Mask value for entries already masked
                                 psMaskType clipped ///< Mask value to give to clipped entries
-    );
+    ) PS_ATTR_MALLOC;
 
 
Index: trunk/psLib/src/math/psHistogram.h
===================================================================
--- trunk/psLib/src/math/psHistogram.h	(revision 14440)
+++ trunk/psLib/src/math/psHistogram.h	(revision 14452)
@@ -7,6 +7,6 @@
  * @author GLG, MHPCC
  *
- * @version $Revision: 1.3 $ $Name: not supported by cvs2svn $
- * @date $Date: 2007-02-13 03:01:24 $
+ * @version $Revision: 1.4 $ $Name: not supported by cvs2svn $
+ * @date $Date: 2007-08-09 01:40:07 $
  *
  * Copyright 2004-2005 IfA, University of Hawaii
@@ -52,5 +52,5 @@
     float upper,                       ///< Upper limit for the bins
     int n                              ///< Number of bins
-);
+) PS_ATTR_MALLOC;
 
 
Index: trunk/psLib/src/math/psMinimizeLMM.h
===================================================================
--- trunk/psLib/src/math/psMinimizeLMM.h	(revision 14440)
+++ trunk/psLib/src/math/psMinimizeLMM.h	(revision 14452)
@@ -7,6 +7,6 @@
  * @author GLG, MHPCC
  *
- * @version $Revision: 1.11 $ $Name: not supported by cvs2svn $
- * @date $Date: 2007-07-20 00:22:24 $
+ * @version $Revision: 1.12 $ $Name: not supported by cvs2svn $
+ * @date $Date: 2007-08-09 01:40:07 $
  * Copyright 2004-2005 Maui High Performance Computing Center, University of Hawaii
  */
@@ -94,5 +94,5 @@
 psMinConstraint;
 
-psMinConstraint *psMinConstraintAlloc();
+psMinConstraint *psMinConstraintAlloc() PS_ATTR_MALLOC;
 
 /** Allocates a psMinimization structure.
@@ -103,5 +103,5 @@
     int maxIter,                       ///< Number of minimization iterations to perform.
     float tol                          ///< Requested error tolerance
-);
+) PS_ATTR_MALLOC;
 
 /*  Checks the type of a particular pointer.
Index: trunk/psLib/src/math/psPolynomial.h
===================================================================
--- trunk/psLib/src/math/psPolynomial.h	(revision 14440)
+++ trunk/psLib/src/math/psPolynomial.h	(revision 14452)
@@ -8,6 +8,6 @@
  * @author GLG, MHPCC
  *
- * @version $Revision: 1.67 $ $Name: not supported by cvs2svn $
- * @date $Date: 2007-01-23 22:47:23 $
+ * @version $Revision: 1.68 $ $Name: not supported by cvs2svn $
+ * @date $Date: 2007-08-09 01:40:07 $
  *
  * Copyright 2004-2005 Maui High Performance Computing Center, University of Hawaii
@@ -111,5 +111,5 @@
     psPolynomialType type,             ///< Polynomial Type
     unsigned int nX                    ///< Number of terms
-);
+) PS_ATTR_MALLOC;
 
 /** Allocates a 2-D polynomial structure
@@ -121,5 +121,5 @@
     unsigned int nX,                   ///< Number of terms in x
     unsigned int nY                    ///< Number of terms in y
-);
+) PS_ATTR_MALLOC;
 
 /** Allocates a 3-D polynomial structure
@@ -132,5 +132,5 @@
     unsigned int nY,                   ///< Number of terms in y
     unsigned int nZ                    ///< Number of terms in z
-);
+) PS_ATTR_MALLOC;
 
 /** Allocates a 4-D polynomial structure
@@ -144,5 +144,5 @@
     unsigned int nZ,                   ///< Number of terms in z
     unsigned int nT                    ///< Number of terms in t
-);
+) PS_ATTR_MALLOC;
 
 bool psPolynomial2DRecycle(psPolynomial2D *poly,
Index: trunk/psLib/src/math/psPolynomialMetadata.h
===================================================================
--- trunk/psLib/src/math/psPolynomialMetadata.h	(revision 14440)
+++ trunk/psLib/src/math/psPolynomialMetadata.h	(revision 14452)
@@ -8,6 +8,6 @@
  * @author GLG, MHPCC
  *
- * @version $Revision: 1.2 $ $Name: not supported by cvs2svn $
- * @date $Date: 2007-08-07 00:03:00 $
+ * @version $Revision: 1.3 $ $Name: not supported by cvs2svn $
+ * @date $Date: 2007-08-09 01:40:07 $
  *
  * Copyright 2004-2005 Maui High Performance Computing Center, University of Hawaii
@@ -51,9 +51,5 @@
     const char *format,                ///< Name of polynomial folder.
     ...                                ///< Arguments for name formatting.
-)
-#ifdef __GNUC__
-__attribute__((format(printf,3,4)))
-#endif
-;
+) PS_ATTR_FORMAT(printf,3,4);
 
 /** Allocates a new psPolynomial2D structure with information from a psMetadata.
@@ -88,9 +84,5 @@
     const char *format,                      ///< Name of polynomial folder.
     ...                                ///< Arguments for name formatting.
-)
-#ifdef __GNUC__
-__attribute__((format(printf,3,4)))
-#endif
-;
+) PS_ATTR_FORMAT(printf,3,4);
 
 /** Allocates a new psPolynomial3D structure with information from a psMetadata.
@@ -126,9 +118,5 @@
     const char *format,                      ///< Name of polynomial folder.
     ...                                ///< Arguments for name formatting.
-)
-#ifdef __GNUC__
-__attribute__((format(printf,3,4)))
-#endif
-;
+) PS_ATTR_FORMAT(printf, 3, 4);
 
 /** Allocates a new psPolynomial4D structure with information from a psMetadata.
@@ -164,9 +152,5 @@
     const char *format,                      ///< Name of polynomial folder.
     ...                                ///< Arguments for name formatting.
-)
-#ifdef __GNUC__
-__attribute__((format(printf,3,4)))
-#endif
-;
+) PS_ATTR_FORMAT(printf, 3, 4);
 
 /// @}
Index: trunk/psLib/src/math/psRandom.h
===================================================================
--- trunk/psLib/src/math/psRandom.h	(revision 14440)
+++ trunk/psLib/src/math/psRandom.h	(revision 14452)
@@ -7,6 +7,6 @@
  * @author GLG, MHPCC
  *
- * @version $Revision: 1.8 $ $Name: not supported by cvs2svn $
- * @date $Date: 2007-01-23 22:47:23 $
+ * @version $Revision: 1.9 $ $Name: not supported by cvs2svn $
+ * @date $Date: 2007-08-09 01:40:07 $
  *
  * Copyright 2004-2005 Maui High Performance Computing Center, University of Hawaii
@@ -53,5 +53,5 @@
     psRandomType type,                 ///< The type of RNG
     unsigned long seed                 ///< Known value with which to seed the RNG
-);
+) PS_ATTR_MALLOC;
 
 /** Resets an existing psRandom struct.
Index: trunk/psLib/src/math/psSparse.h
===================================================================
--- trunk/psLib/src/math/psSparse.h	(revision 14440)
+++ trunk/psLib/src/math/psSparse.h	(revision 14452)
@@ -2,6 +2,6 @@
  * @brief functions to manipulate sparse matrices equations
  *
- * $Revision: 1.8 $ $Name: not supported by cvs2svn $
- * $Date: 2007-01-23 22:47:23 $
+ * $Revision: 1.9 $ $Name: not supported by cvs2svn $
+ * $Date: 2007-08-09 01:40:07 $
  * Copyright 2004-2005 IfA, University of Hawaii
  */
@@ -50,5 +50,5 @@
 
 // allocate a sparse matrix structure
-psSparse *psSparseAlloc(int Nrows, int Nelem);
+psSparse *psSparseAlloc(int Nrows, int Nelem) PS_ATTR_MALLOC;
 
 // add a new matrix element
@@ -85,5 +85,5 @@
 
 // allocate a sparse matrix structure
-psSparseBorder *psSparseBorderAlloc(psSparse *sparse, int Nborder);
+psSparseBorder *psSparseBorderAlloc(psSparse *sparse, int Nborder) PS_ATTR_MALLOC;
 
 bool psSparseBorderElementT(psSparseBorder *border, int i, int j, float value);
Index: trunk/psLib/src/math/psSpline.h
===================================================================
--- trunk/psLib/src/math/psSpline.h	(revision 14440)
+++ trunk/psLib/src/math/psSpline.h	(revision 14452)
@@ -7,6 +7,6 @@
  * @author GLG, MHPCC
  *
- * @version $Revision: 1.61 $ $Name: not supported by cvs2svn $
- * @date $Date: 2007-01-23 22:47:23 $
+ * @version $Revision: 1.62 $ $Name: not supported by cvs2svn $
+ * @date $Date: 2007-08-09 01:40:07 $
  * Copyright 2004-2005 Maui High Performance Computing Center, University of Hawaii
  */
@@ -46,5 +46,5 @@
  *  @return psSpline1D*    new 1-D spline struct
  */
-psSpline1D *psSpline1DAlloc();
+psSpline1D *psSpline1DAlloc() PS_ATTR_MALLOC;
 
 /** Evaluates 1-D spline polynomials at a specific coordinate.
Index: trunk/psLib/src/math/psStats.h
===================================================================
--- trunk/psLib/src/math/psStats.h	(revision 14440)
+++ trunk/psLib/src/math/psStats.h	(revision 14452)
@@ -8,6 +8,6 @@
  * @author GLG, MHPCC
  *
- * @version $Revision: 1.61 $ $Name: not supported by cvs2svn $
- * @date $Date: 2007-08-08 19:38:17 $
+ * @version $Revision: 1.62 $ $Name: not supported by cvs2svn $
+ * @date $Date: 2007-08-09 01:40:07 $
  * Copyright 2004-2005 Maui High Performance Computing Center, University of Hawaii
  */
@@ -116,5 +116,5 @@
     const char *func,                   ///< Function name of caller
     psStatsOptions options              ///< Statistics to calculate
-);
+) PS_ATTR_MALLOC;
 #define psStatsAlloc(options) \
       p_psStatsAlloc(__FILE__, __LINE__, __func__, options)
Index: trunk/psLib/src/mathtypes/psImage.h
===================================================================
--- trunk/psLib/src/mathtypes/psImage.h	(revision 14440)
+++ trunk/psLib/src/mathtypes/psImage.h	(revision 14452)
@@ -9,6 +9,6 @@
  * @author Joshua Hoblitt, University of Hawaii
  *
- * @version $Revision: 1.93 $ $Name: not supported by cvs2svn $
- * @date $Date: 2007-04-12 18:52:57 $
+ * @version $Revision: 1.94 $ $Name: not supported by cvs2svn $
+ * @date $Date: 2007-08-09 01:40:07 $
  * Copyright 2004-2005 Maui High Performance Computing Center, University of Hawaii
  */
@@ -89,5 +89,5 @@
     int numRows,                       ///< Number of rows in image.
     psElemType type                    ///< Type of data for image.
-);
+) PS_ATTR_MALLOC;
 #define psImageAlloc(numCols, numRows, type) \
       p_psImageAlloc(__FILE__, __LINE__, __func__, numCols, numRows, type)
Index: trunk/psLib/src/mathtypes/psScalar.h
===================================================================
--- trunk/psLib/src/mathtypes/psScalar.h	(revision 14440)
+++ trunk/psLib/src/mathtypes/psScalar.h	(revision 14452)
@@ -8,6 +8,6 @@
  * @author Joshua Hoblitt, University of Hawaii
  *
- * @version $Revision: 1.23 $ $Name: not supported by cvs2svn $
- * @date $Date: 2007-03-14 00:39:51 $
+ * @version $Revision: 1.24 $ $Name: not supported by cvs2svn $
+ * @date $Date: 2007-08-09 01:40:07 $
  * Copyright 2004-2005 Maui High Performance Computing Center, University of Hawaii
  */
@@ -70,5 +70,5 @@
     double value,                       ///< Data to be put into psScalar
     psElemType type                     ///< Type of data to be held by psScalar
-);
+) PS_ATTR_MALLOC;
 #define psScalarAlloc(value, type) \
       p_psScalarAlloc(__FILE__, __LINE__, __func__, value, type)
Index: trunk/psLib/src/mathtypes/psVector.h
===================================================================
--- trunk/psLib/src/mathtypes/psVector.h	(revision 14440)
+++ trunk/psLib/src/mathtypes/psVector.h	(revision 14452)
@@ -10,6 +10,6 @@
  * @author Joshua Hoblitt, University of Hawaii
  *
- * @version $Revision: 1.68 $ $Name: not supported by cvs2svn $
- * @date $Date: 2007-07-17 20:32:02 $
+ * @version $Revision: 1.69 $ $Name: not supported by cvs2svn $
+ * @date $Date: 2007-08-09 01:40:07 $
  * Copyright 2004-2005 Maui High Performance Computing Center, University of Hawaii
  */
@@ -90,9 +90,5 @@
     long nalloc,                        ///< Total number of elements to make available.
     psElemType type                    ///< Type of data to be held by vector.
-//#ifdef __GNUC__
-//) __attribute__((malloc));
-//#else // ifdef __GNUC__
-);
-//#endif // ifdef __GNUC__
+) PS_ATTR_MALLOC;
 #define psVectorAlloc(nalloc, type) \
       p_psVectorAlloc(__FILE__, __LINE__, __func__, nalloc, type)
@@ -119,9 +115,5 @@
     long nalloc,                       ///< Total number of elements to make available.
     psElemType type                    ///< Type of data to be held by vector.
-//#ifdef __GNUC__
-//) __attribute__((malloc));
-//#else // ifdef __GNUC__
-);
-//#endif // ifdef __GNUC__
+) PS_ATTR_MALLOC;
 #define psVectorAllocEmpty(nalloc, type) \
       p_psVectorAllocEmpty(__FILE__, __LINE__, __func__, nalloc, type)
Index: trunk/psLib/src/sys/psAbort.h
===================================================================
--- trunk/psLib/src/sys/psAbort.h	(revision 14440)
+++ 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 14440)
+++ 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 14440)
+++ 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 14440)
+++ 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 14440)
+++ 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 14440)
+++ 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 14440)
+++ 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.
  *
Index: trunk/psLib/src/types/psArray.h
===================================================================
--- trunk/psLib/src/types/psArray.h	(revision 14440)
+++ trunk/psLib/src/types/psArray.h	(revision 14452)
@@ -10,6 +10,6 @@
  *  @author Joshua Hoblitt, University of Hawaii
  *
- *  @version $Revision: 1.48 $ $Name: not supported by cvs2svn $
- *  @date $Date: 2007-03-08 02:13:31 $
+ *  @version $Revision: 1.49 $ $Name: not supported by cvs2svn $
+ *  @date $Date: 2007-08-09 01:40:08 $
  *
  *  Copyright 2004-2005 Maui High Performance Computing Center, University of Hawaii
@@ -79,5 +79,5 @@
     const char *func,                   ///< Function name of caller
     long nalloc                         ///< Total number of elements to make available.
-);
+) PS_ATTR_MALLOC;
 #define psArrayAlloc(nalloc) \
       p_psArrayAlloc(__FILE__, __LINE__, __func__, nalloc)
Index: trunk/psLib/src/types/psBitSet.h
===================================================================
--- trunk/psLib/src/types/psBitSet.h	(revision 14440)
+++ trunk/psLib/src/types/psBitSet.h	(revision 14452)
@@ -11,6 +11,6 @@
  *  @author Ross Harman, MHPCC
  *
- *  @version $Revision: 1.30 $ $Name: not supported by cvs2svn $
- *  @date $Date: 2007-02-13 03:01:24 $
+ *  @version $Revision: 1.31 $ $Name: not supported by cvs2svn $
+ *  @date $Date: 2007-08-09 01:40:08 $
  *
  *  Copyright 2004-2005 Maui High Performance Computing Center, University of Hawaii
@@ -76,5 +76,5 @@
     const char *func,                   ///< Function name of caller
     long nalloc                        ///< Number of bits in psBitSet array
-);
+) PS_ATTR_MALLOC;
 #define psBitSetAlloc(nalloc) \
       p_psBitSetAlloc(__FILE__, __LINE__, __func__, nalloc)
Index: trunk/psLib/src/types/psHash.h
===================================================================
--- trunk/psLib/src/types/psHash.h	(revision 14440)
+++ trunk/psLib/src/types/psHash.h	(revision 14452)
@@ -11,6 +11,6 @@
  *  @author GLG, MHPCC
  *
- *  @version $Revision: 1.23 $ $Name: not supported by cvs2svn $
- *  @date $Date: 2007-03-08 02:13:31 $
+ *  @version $Revision: 1.24 $ $Name: not supported by cvs2svn $
+ *  @date $Date: 2007-08-09 01:40:08 $
  *
  *  Copyright 2004-2005 Maui High Performance Computing Center, University of Hawaii
@@ -69,5 +69,5 @@
     const char *func,                   ///< Function name of caller
     long nalloc                        ///< The number of buckets to allocate.
-);
+) PS_ATTR_MALLOC;
 #define psHashAlloc(nalloc) \
       p_psHashAlloc(__FILE__, __LINE__, __func__, nalloc)
Index: trunk/psLib/src/types/psList.h
===================================================================
--- trunk/psLib/src/types/psList.h	(revision 14440)
+++ trunk/psLib/src/types/psList.h	(revision 14452)
@@ -5,6 +5,6 @@
  *  @author Robert Daniel DeSonia, MHPCC
  *
- *  @version $Revision: 1.45 $ $Name: not supported by cvs2svn $
- *  @date $Date: 2007-03-08 03:59:12 $
+ *  @version $Revision: 1.46 $ $Name: not supported by cvs2svn $
+ *  @date $Date: 2007-08-09 01:40:08 $
  *
  *  Copyright 2004-2005 Maui High Performance Computing Center, University of Hawaii
@@ -103,5 +103,5 @@
     const char *func,                   ///< Function name of caller
     psPtr data                          ///< initial data item; may be NULL if an empty psList is desired
-);
+) PS_ATTR_MALLOC;
 #define psListAlloc(data) \
       p_psListAlloc(__FILE__, __LINE__, __func__, data)
@@ -129,5 +129,5 @@
     ///<  This can be a numeric index, PS_LIST_HEAD, or PS_LIST_TAIL.
     bool mutable                       ///< Is it permissible to modify list?
-);
+) PS_ATTR_MALLOC;
 #define psListIteratorAlloc(list, location, mutable) \
       p_psListIteratorAlloc(__FILE__, __LINE__, __func__, list, location, mutable)
Index: trunk/psLib/src/types/psLookupTable.h
===================================================================
--- trunk/psLib/src/types/psLookupTable.h	(revision 14440)
+++ trunk/psLib/src/types/psLookupTable.h	(revision 14452)
@@ -6,6 +6,6 @@
 *  @author Ross Harman, MHPCC
 *
-*  @version $Revision: 1.20 $ $Name: not supported by cvs2svn $
-*  @date $Date: 2007-03-08 22:08:26 $
+*  @version $Revision: 1.21 $ $Name: not supported by cvs2svn $
+*  @date $Date: 2007-08-09 01:40:08 $
 *
 *  Copyright 2004 Maui High Performance Computing Center, University of Hawaii
@@ -105,5 +105,5 @@
     const char *format,                ///< scanf-like format string
     long indexCol                      ///< Column of the index vector (starting at zero)
-);
+) PS_ATTR_MALLOC;
 #define psLookupTableAlloc(filename, format, indexCol) \
       p_psLookupTableAlloc(__FILE__, __LINE__, __func__, filename, format, indexCol)
Index: trunk/psLib/src/types/psMetadata.h
===================================================================
--- trunk/psLib/src/types/psMetadata.h	(revision 14440)
+++ trunk/psLib/src/types/psMetadata.h	(revision 14452)
@@ -9,6 +9,6 @@
 *  @author Ross Harman, MHPCC
 *
-*  @version $Revision: 1.102 $ $Name: not supported by cvs2svn $
-*  @date $Date: 2007-07-04 01:36:14 $
+*  @version $Revision: 1.103 $ $Name: not supported by cvs2svn $
+*  @date $Date: 2007-08-09 01:40:08 $
 *
 *  Copyright 2004-2005 Maui High Performance Computing Center, University of Hawaii
@@ -161,5 +161,5 @@
     const char *comment,               ///< Comment for metadata item.
     ...                                ///< Arguments for name formatting and metadata item data.
-);
+) PS_ATTR_MALLOC;
 #define psMetadataItemAlloc(name, type, ...) \
       p_psMetadataItemAlloc(__FILE__, __LINE__, __func__, name, type, __VA_ARGS__)
@@ -417,5 +417,5 @@
     unsigned int lineno,                ///< Line number of caller
     const char *func                    ///< Function name of caller
-);
+) PS_ATTR_MALLOC;
 #define psMetadataAlloc() \
       p_psMetadataAlloc(__FILE__, __LINE__, __func__)
@@ -1167,5 +1167,5 @@
     ///< A regular expression for subsetting the psMetadata.  If NULL, no
     ///< subsetting is performed.
-);
+) PS_ATTR_MALLOC;
 #define psMetadataIteratorAlloc(md, location, regex) \
       p_psMetadataIteratorAlloc(__FILE__, __LINE__, __func__, md, location, regex)
Index: trunk/psLib/src/types/psPixels.h
===================================================================
--- trunk/psLib/src/types/psPixels.h	(revision 14440)
+++ trunk/psLib/src/types/psPixels.h	(revision 14452)
@@ -6,6 +6,6 @@
  *  @author Robert DeSonia, MHPCC
  *
- *  @version $Revision: 1.27 $ $Name: not supported by cvs2svn $
- *  @date $Date: 2007-03-08 22:12:56 $
+ *  @version $Revision: 1.28 $ $Name: not supported by cvs2svn $
+ *  @date $Date: 2007-08-09 01:40:08 $
  *
  *  Copyright 2004-2005 Maui High Performance Computing Center, University of Hawaii
@@ -74,5 +74,5 @@
     const char *func,                   ///< Function name of caller
     long nalloc                         ///< the size of the coordinate vectors
-);
+) PS_ATTR_MALLOC;
 #define psPixelsAlloc(nalloc) \
       p_psPixelsAlloc(__FILE__, __LINE__, __func__, nalloc)
