--- engines/schema_pgsql.inc.orig       2009-02-25 15:07:02.000000000 -0500
+++ engines/schema_pgsql.inc    2009-02-25 15:09:40.000000000 -0500
@@ -92,6 +92,10 @@ function schema_pgsql_inspect($tbl_name
         // numeric, use intval() or floatval() to extract the value as a
         // numeric type.

+        // Negative defaults are enclosed in parentheses in PostgreSQL, which
+        // need to be removed for floatval and intval to work.
+        $col['default'] = trim($col['default'], '()');
+
         // more pgsql-specific stuff
         if (strpos($col['default'], 'nextval(\'') !== FALSE &&
           $def_type == 'regclass)') {
