Index: /branches/eam_branches/ipp-20110906/Ohana/src/opihi/cmd.data/read_vectors.c
===================================================================
--- /branches/eam_branches/ipp-20110906/Ohana/src/opihi/cmd.data/read_vectors.c	(revision 32557)
+++ /branches/eam_branches/ipp-20110906/Ohana/src/opihi/cmd.data/read_vectors.c	(revision 32558)
@@ -23,5 +23,5 @@
 int read_vectors (int argc, char **argv) {
   
-  int i, j, Nskip, Nvec, *col, done, status, IsCSV;
+    int i, j, Nskip, Nvec, *col, done, status, IsCSV, VERBOSE;
   int Nbytes, nbytes, Nstart, NELEM, N, nread;
   char *colstr, *c0, *c1, *buffer, *extname;
@@ -51,4 +51,10 @@
     remove_argument (N, &argc, argv);
     IsCSV = TRUE;
+  }
+
+  VERBOSE = FALSE;
+  if ((N = get_argument (argc, argv, "-v"))) {
+    remove_argument (N, &argc, argv);
+    VERBOSE = TRUE;
   }
 
@@ -121,7 +127,4 @@
     scan_line (f, buffer);
   }
-
-  int Nfield = 0;
-  int Nline = 0;
 
   Nstart = 0;
@@ -157,17 +160,28 @@
 	    status = dparse (&value, col[i], c0);
 	  }
-	  vec[i][0].elements.Flt[N] = value;
 	  if (status) {
-	      Nfield ++;
+	      vec[i][0].elements.Flt[N] = value;
+	  } else {
+	      vec[i][0].elements.Flt[N] = NAN;
+	      if (VERBOSE) {
+		  if (IsCSV) {
+		      gprint (GP_ERR, "suspect field: %d (%s) in %s\n", col[i], argv[2*i+2], c0);
+		  } else {
+		      gprint (GP_ERR, "suspect field: %d in %s\n", col[i], c0);
+		  }
+	      }
 	  }
-	  if (!status) vec[i][0].elements.Flt[N] = NAN;
-	}
-	if (status) N++;
-      }
-      Nline ++;
-      if (c1) {
-	  // fprintf (stderr, "line %d, chars %ld, fields %d\n", Nline, (c1 - c0), Nfield);
-      }
-      Nfield = 0;
+	}
+	if (status) {
+	    N++;
+	} else {
+	    if (VERBOSE && FALSE) {
+		char temp[32];
+		strncpy (temp, c0, 32);
+		temp[31] = 0;
+		gprint (GP_ERR, "skip line %s\n\n", temp);
+	    }
+	}
+      }
       c0 = c1 + 1;
       if (N == NELEM) {
@@ -177,5 +191,4 @@
 	}
       }
-	
     }
   }
