Index: core/src/java/org/apache/lucene/search/spans/SpanNearQuery.java
===================================================================
--- core/src/java/org/apache/lucene/search/spans/SpanNearQuery.java	(Revision 1371959)
+++ core/src/java/org/apache/lucene/search/spans/SpanNearQuery.java	(Arbeitskopie)
@@ -67,7 +67,7 @@
       if (i == 0) {                               // check field
         field = clause.getField();
       } else if (!clause.getField().equals(field)) {
-        throw new IllegalArgumentException("Clauses must have same field.");
+        throw new IllegalArgumentException("Clauses must have same field: " + clause.getField() + " vs. " + field);
       }
       this.clauses.add(clause);
     }
Index: core/src/java/org/apache/lucene/util/automaton/RegExp.java
===================================================================
--- core/src/java/org/apache/lucene/util/automaton/RegExp.java	(Revision 1371959)
+++ core/src/java/org/apache/lucene/util/automaton/RegExp.java	(Arbeitskopie)
@@ -894,7 +894,7 @@
         while (peek("0123456789"))
           next();
         if (start == pos) throw new IllegalArgumentException(
-            "integer expected at position " + pos);
+            "integer expected at position " + pos + " in " + b);
         int n = Integer.parseInt(b.substring(start, pos));
         int m = -1;
         if (match(',')) {
@@ -904,7 +904,7 @@
           if (start != pos) m = Integer.parseInt(b.substring(start, pos));
         } else m = n;
         if (!match('}')) throw new IllegalArgumentException(
-            "expected '}' at position " + pos);
+            "expected '}' at position " + pos + " in " + b);
         if (m == -1) e = makeRepeat(e, n);
         else e = makeRepeat(e, n, m);
       }
