Index: /trunk/psLib/src/db/psDB.c
===================================================================
--- /trunk/psLib/src/db/psDB.c	(revision 8609)
+++ /trunk/psLib/src/db/psDB.c	(revision 8610)
@@ -12,6 +12,6 @@
  *  @author Joshua Hoblitt
  *
- *  @version $Revision: 1.86 $ $Name: not supported by cvs2svn $
- *  @date $Date: 2006-08-25 22:02:40 $
+ *  @version $Revision: 1.87 $ $Name: not supported by cvs2svn $
+ *  @date $Date: 2006-08-26 00:32:39 $
  *
  *  Copyright (C) 2005-2006  Joshua Hoblitt, University of Hawaii
@@ -1252,5 +1252,5 @@
         } else if (item->type == PS_DATA_STRING) {
             // + column name + _ + varchar( + length + )
-            psStringAppend(&query, "%s VARCHAR(%s)", item->name, item->data.V);
+            psStringAppend(&query, "%s VARCHAR(%s)", item->name, (char *)item->data.V);
         } else {
             psError(PS_ERR_BAD_PARAMETER_TYPE, true,
@@ -1289,7 +1289,7 @@
         for (int i = 0; i < psArrayLength(pKeys); i++) {
             if (i < 1) {
-                psStringAppend(&query, "%s", pKeys->data[i]);
+                psStringAppend(&query, "%s", (char *)pKeys->data[i]);
             } else {
-                psStringAppend(&query, ", %s", pKeys->data[i]);
+                psStringAppend(&query, ", %s", (char *)pKeys->data[i]);
             }
         }
@@ -1642,7 +1642,7 @@
                 // very large TEXT columns that really shouldn't be
                 // used in a where clause...
-                psStringAppend(&query, "%s LIKE '%s'", item->name, item->data.V);
+                psStringAppend(&query, "%s LIKE '%s'", item->name, (char *)item->data.V);
             } else {
-                psStringAppend(&query, "%s = '%s'", item->name, item->data.V);
+                psStringAppend(&query, "%s = '%s'", item->name, (char *)item->data.V);
             }
         }
Index: /trunk/psLib/src/db/psDB.h
===================================================================
--- /trunk/psLib/src/db/psDB.h	(revision 8609)
+++ /trunk/psLib/src/db/psDB.h	(revision 8610)
@@ -10,6 +10,6 @@
  *  @author Joshua Hoblitt
  *
- *  @version $Revision: 1.24 $ $Name: not supported by cvs2svn $
- *  @date $Date: 2006-08-15 02:28:13 $
+ *  @version $Revision: 1.25 $ $Name: not supported by cvs2svn $
+ *  @date $Date: 2006-08-26 00:32:39 $
  *
  *  Copyright 2005 Joshua Hoblitt, University of Hawaii
@@ -90,9 +90,18 @@
  * @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__
 
 /** Executes a SQL query as a prepared statement
@@ -104,4 +113,5 @@
  * @return long:    the number of database rows affected
  */
+#ifdef __GNUC__
 long p_psDBRunQueryPrepared(
     psDB *dbh,                          ///< Database handle
@@ -109,5 +119,13 @@
     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__
 
 /** Fetches the result of a SQL query
Index: /trunk/psLib/src/sys/psString.h
===================================================================
--- /trunk/psLib/src/sys/psString.h	(revision 8609)
+++ /trunk/psLib/src/sys/psString.h	(revision 8610)
@@ -14,6 +14,6 @@
  *  @author David Robbins, MHPCC
  *
- *  @version $Revision: 1.28 $ $Name: not supported by cvs2svn $
- *  @date $Date: 2006-08-25 22:42:37 $
+ *  @version $Revision: 1.29 $ $Name: not supported by cvs2svn $
+ *  @date $Date: 2006-08-26 00:32:39 $
  *
  *  Copyright 2004-2005 Maui High Performance Computing Center, University of Hawaii
@@ -95,9 +95,17 @@
  * @return ssize_t:     The length of the new string (excluding '\0')
  */
+#ifdef __GNUC__
 ssize_t psStringAppend(
     char **dest,                        ///< existing string
     const char *format,                 ///< format to append
     ...                                 ///< format arguments
-);
+) __attribute__((format(printf, 2, 3)));
+#else // __GNUC__
+ssize_t psStringAppend(
+    char **dest,                        ///< existing string
+    const char *format,                 ///< format to append
+    ...                                 ///< format arguments
+);
+#endif // __GNUC__
 
 /** Appends a format onto a string
@@ -121,9 +129,17 @@
  * @return ssize_t:     The length of the new string (excluding '\0')
  */
+#ifdef __GNUC__
 ssize_t psStringPrepend(
     char **dest,                        ///< existing string
     const char *format,                 ///< format to append
     ...                                 ///< format arguments
-);
+) __attribute__((format(printf, 2, 3)));
+# else // __GNUC__
+    ssize_t psStringPrepend(
+        char **dest,                        ///< existing string
+        const char *format,                 ///< format to append
+        ...                                 ///< format arguments
+    );
+#endif // __GNUC__
 
 /** Prepends a format onto a string
Index: /trunk/psLib/src/types/psMetadataConfig.c
===================================================================
--- /trunk/psLib/src/types/psMetadataConfig.c	(revision 8609)
+++ /trunk/psLib/src/types/psMetadataConfig.c	(revision 8610)
@@ -10,6 +10,6 @@
 *  @author Eric Van Alst, MHPCC
 *
-*  @version $Revision: 1.73 $ $Name: not supported by cvs2svn $
-*  @date $Date: 2006-08-17 15:39:24 $
+*  @version $Revision: 1.74 $ $Name: not supported by cvs2svn $
+*  @date $Date: 2006-08-26 00:32:39 $
 *
 *  Copyright 2004-2005 Maui High Performance Computing Center, University of Hawaii
@@ -20,4 +20,5 @@
 #include <ctype.h>
 #include <limits.h>
+#include <inttypes.h>
 
 #include "psAbort.h"
@@ -57,5 +58,4 @@
 /** Maximum size of a string */
 #define MAX_STRING_LENGTH 1024
-#define MAXSTR 2256
 
 
@@ -1279,5 +1279,5 @@
     #define FORMAT_PRIMITIVE_METADATAITEM(type, dataformat) \
     psStringAppend(&content, "%-15s  %-8s", item->name, #type); \
-    psStringAppend(&content, "  " #dataformat, item->data.type); \
+    psStringAppend(&content, "  " dataformat, item->data.type); \
     if ( strncmp(item->comment,"",2) ) { \
         psStringAppend(&content, " #%s\n", item->comment); \
@@ -1315,32 +1315,32 @@
         break;
     case PS_DATA_S8:
-        FORMAT_PRIMITIVE_METADATAITEM(S8, %d);
+        FORMAT_PRIMITIVE_METADATAITEM(S8, "%d");
         break;
     case PS_DATA_S16:
-        FORMAT_PRIMITIVE_METADATAITEM(S16, %d);
+        FORMAT_PRIMITIVE_METADATAITEM(S16, "%d");
         break;
     case PS_DATA_S32:
-        FORMAT_PRIMITIVE_METADATAITEM(S32, %d);
+        FORMAT_PRIMITIVE_METADATAITEM(S32, "%d");
         break;
     case PS_DATA_S64:
-        FORMAT_PRIMITIVE_METADATAITEM(S32, %ld);
+        FORMAT_PRIMITIVE_METADATAITEM(S64, "%"PRId64);
         break;
     case PS_DATA_U8:
-        FORMAT_PRIMITIVE_METADATAITEM(U8, %u);
+        FORMAT_PRIMITIVE_METADATAITEM(U8, "%u");
         break;
     case PS_DATA_U16:
-        FORMAT_PRIMITIVE_METADATAITEM(U16, %u);
+        FORMAT_PRIMITIVE_METADATAITEM(U16, "%u");
         break;
     case PS_DATA_U32:
-        FORMAT_PRIMITIVE_METADATAITEM(U32, %u);
+        FORMAT_PRIMITIVE_METADATAITEM(U32, "%u");
         break;
     case PS_DATA_U64:
-        FORMAT_PRIMITIVE_METADATAITEM(U64, %lu);
+        FORMAT_PRIMITIVE_METADATAITEM(U64, "%"PRIu64);
         break;
     case PS_DATA_F32:
-        FORMAT_PRIMITIVE_METADATAITEM(F32, %.7g);
+        FORMAT_PRIMITIVE_METADATAITEM(F32, "%.7g");
         break;
     case PS_DATA_F64:
-        FORMAT_PRIMITIVE_METADATAITEM(F64, %.15g);
+        FORMAT_PRIMITIVE_METADATAITEM(F64, "%.15g");
         break;
     case PS_DATA_STRING:
@@ -1425,5 +1425,5 @@
             psStringAppend(&content, "U64 ");
             for (int i = 0; i < vector->n; i++) {
-                psStringAppend(&content, "%lu ", vector->data.U64[i]);
+                psStringAppend(&content, "%" PRIu64 " ", vector->data.U64[i]);
             }
             break;
@@ -1449,9 +1449,9 @@
             psStringAppend(&content, "S64 ");
             for (int i = 0; i < vector->n; i++) {
-                psStringAppend(&content, "%ld ", vector->data.S64[i]);
+                psStringAppend(&content, "%" PRId64 " ", vector->data.S64[i]);
             }
             break;
         case PS_DATA_F32:
-            psStringAppend(&content, "F32 ", MAXSTR);
+            psStringAppend(&content, "F32 ");
             for (int i = 0; i < vector->n; i++) {
                 psStringAppend(&content, "%.7g ", vector->data.F32[i]);
@@ -1459,5 +1459,5 @@
             break;
         case PS_DATA_F64:
-            psStringAppend(&content, "F64 ", MAXSTR);
+            psStringAppend(&content, "F64 ");
             for (int i = 0; i < vector->n; i++) {
                 psStringAppend(&content, "%.15g", vector->data.F64[i]);
