diff --git a/errors/fmt/fmt_test.go b/errors/fmt/fmt_test.go
index d19f93b..01e85b4 100644
--- a/errors/fmt/fmt_test.go
+++ b/errors/fmt/fmt_test.go
@@ -240,10 +240,10 @@
 	{"%#q", "\U0010ffff", "`􏿿`"},
 	{"%#+q", "\U0010ffff", "`􏿿`"},
 	// Runes that are not valid.
-	{"%q", string(0x110000), `"�"`},
-	{"%+q", string(0x110000), `"\ufffd"`},
-	{"%#q", string(0x110000), "`�`"},
-	{"%#+q", string(0x110000), "`�`"},
+	{"%q", string(rune(0x110000)), `"�"`},
+	{"%+q", string(rune(0x110000)), `"\ufffd"`},
+	{"%#q", string(rune(0x110000)), "`�`"},
+	{"%#+q", string(rune(0x110000)), "`�`"},
 
 	// characters
 	{"%c", uint('x'), "x"},
@@ -1407,7 +1407,7 @@
 	s := "%"
 	for i := 0; i < 128; i++ {
 		if f.Flag(i) {
-			s += string(i)
+			s += string(rune(i))
 		}
 	}
 	if w, ok := f.Width(); ok {
diff --git a/errors/fmt/scan.go b/errors/fmt/scan.go
index ae79e39..f1c192a 100644
--- a/errors/fmt/scan.go
+++ b/errors/fmt/scan.go
@@ -600,13 +600,13 @@
 // scanRune returns the next rune value in the input.
 func (s *ss) scanRune(bitSize int) int64 {
 	s.notEOF()
-	r := int64(s.getRune())
+	r := s.getRune()
 	n := uint(bitSize)
-	x := (r << (64 - n)) >> (64 - n)
-	if x != r {
+	x := (int64(r) << (64 - n)) >> (64 - n)
+	if x != int64(r) {
 		s.errorString("overflow on character value " + string(r))
 	}
-	return r
+	return int64(r)
 }
 
 // scanBasePrefix reports whether the integer begins with a 0 or 0x,
