diff --git a/cmd/fiximports/main.go b/cmd/fiximports/main.go
index 520cbb7..b87a7d5 100644
--- a/cmd/fiximports/main.go
+++ b/cmd/fiximports/main.go
@@ -205,7 +205,7 @@
 				strings.Contains(msg, "expects import") {
 				// don't show the very errors we're trying to fix
 			} else {
-				fmt.Fprintln(stderr, msg)
+				fmt.Fprintln(stderr, p.Error)
 			}
 		}
 
@@ -467,6 +467,13 @@
 	Err         string   // the error itself
 }
 
+func (e packageError) Error() string {
+	if e.Pos != "" {
+		return e.Pos + ": " + e.Err
+	}
+	return e.Err
+}
+
 // list runs 'go list' with the specified arguments and returns the
 // metadata for matching packages.
 func list(args ...string) ([]*listPackage, error) {
diff --git a/cmd/fiximports/main_test.go b/cmd/fiximports/main_test.go
index 3ec5511..2e011d3 100644
--- a/cmd/fiximports/main_test.go
+++ b/cmd/fiximports/main_test.go
@@ -212,6 +212,7 @@
 			test.wantStderr = strings.Replace(test.wantStderr, `testdata/src/old.com/bad/bad.go`, `testdata\src\old.com\bad\bad.go`, -1)
 			test.wantStderr = strings.Replace(test.wantStderr, `testdata/src/fruit.io/banana/banana.go`, `testdata\src\fruit.io\banana\banana.go`, -1)
 		}
+		test.wantStderr = strings.TrimSpace(test.wantStderr)
 
 		// Check status code.
 		if fiximports(test.packages...) != test.wantOK {
@@ -219,12 +220,12 @@
 		}
 
 		// Compare stderr output.
-		if got := stderr.(*bytes.Buffer).String(); got != test.wantStderr {
+		if got := strings.TrimSpace(stderr.(*bytes.Buffer).String()); got != test.wantStderr {
 			if strings.Contains(got, "vendor/golang_org/x/text/unicode/norm") {
 				t.Skip("skipping known-broken test; see golang.org/issue/17417")
 			}
-			t.Errorf("#%d. stderr: got <<%s>>, want <<%s>>",
-				i, stderr, test.wantStderr)
+			t.Errorf("#%d. stderr: got <<\n%s\n>>, want <<\n%s\n>>",
+				i, got, test.wantStderr)
 		}
 
 		// Compare rewrites.
