The usual...
diff --git a/BUGS b/BUGS
index fe9231a..8a5b4e2 100644
--- a/BUGS
+++ b/BUGS
@@ -1,27 +1,16 @@
 Sorry, this list does not claim completeness.  If I fixed a bug
 immediately upon receiving the first complaint I usually did not
-nother to make an ehtry in this file, unless it was a serious bug
+nother to make an entry in this file, unless it was a serious bug
 (core dump or infinite loop).
 
-==> Status indicators: (-) not fixed; (?) fix proposed but not
-    confirmed; (*) fixed.
+==> Status indicators: (-) not fixed; (*) fixed; (?) don't know what to do.
 
 ======================================================================
-BUGS found in 1.0.3
--------------------
+BUGS found in 1.0.3 and not yet fixed
+-------------------------------------
 
-(-) unwanted entries in stack trace if err_clear() clears an error
-that also set a stack trace
-
-(-) i, x[i] = a, b assigns b to x[a] rather than to x[i] as expected
-(if we don't fix this, it should be documented with a warning!)
-
-(-) various memory leaks (see purify report from anthony.baxter@aaii.oz.au)
-
-(*) etags no longer supports -t flag
-
-(-) compile.c:com_argdefs() references unalloc'ed memory for def
-f(a=1,): ...
+(-) print_error raises and then masks an error if softspace is not
+    defined
 
 (-) Syntax errors are reported in a silly way if multi-line tokens are
 involved.
@@ -29,11 +18,30 @@
 (-) SyntaxError exception for compile('...') are reported wrongly
 (lineno is always zero and offset is offset into the whole string).
 
-(-) If you have a python binary in your path like
+(-) freeze script needs major rewrite to cope with multiple extensions
+(Jack seems to have fixed it now -- where is it?)
+
+(?) various memory leaks (see purify report from anthony.baxter@aaii.oz.au)
+
+BUGS found in 1.0.3 and fixed in 1.1
+------------------------------------
+
+(*) unwanted entries in stack trace if err_clear() clears an error
+that also set a stack trace
+
+(*) i, x[i] = a, b assigns b to x[a] rather than to x[i] as expected
+(documented with a warning in ref6.tex!)
+
+(*) etags no longer supports -t flag
+
+(*) compile.c:com_argdefs() references unalloc'ed memory for def
+f(a=1,): ...
+
+(*) If you have a python binary in your path like
 /ufs/guido/bin/sgi/python then the default prefix option computed by
 the configure script is bogus!
 
-(-) Make rule for making lib*.a should remove the lib*.a file first.
+(*) Make rule for making lib*.a should remove the lib*.a file first.
 
 (*) vars() error message is wrong (copied from dir() obviously).
 
@@ -41,20 +49,18 @@
 
 (*) rfc822.py: getfirst* dies when multiple headers occur
 
-(-) urllib caching is wrong (should use date from Expires header)
+(*) urllib caching is wrong (should use date from Expires header)
 
 (*) On a related matter: regexpr.c still has two malloc()s the results
-of which are not tested for being NULL (lines 1253 and 1530). There
-are also some in rgbimagemodule.c. Am I overlooking something or is
+of which are not tested for being NULL (lines 1253 and 1530).  There
+are also some in rgbimagemodule.c.  Am I overlooking something or is
 this a crasher?
 
 (*) strop.rindex('abc', '') returns 0 instead of 3
 
 (*) sunaudiodevmodule.o is too long!
 
-(-) need newer DOS binary (16 bit version doesn't do default args)
-
-(-) toplevel README needs new text on PC and Mac builds
+(*) toplevel README needs new text on PC and Mac builds
 
 (*) long(0x80000000) has wrong value!
 
@@ -62,18 +68,20 @@
 Bugs found in 1.0.2 and not yet fixed
 -------------------------------------
 
-(-) compiler warnings about argument type of uname() on ULTRIX
-machines
+(?) compiler warnings about argument type of uname() on ULTRIX
+machines (don't know what to do about it)
 
-(-) syntax error for interactive input prints garbage instead of last
-source line on some systems (e.g. AIX)
+(?) syntax error for interactive input prints garbage instead of last
+source line on some systems (e.g. AIX) (impossible to test/reproduce)
+!!! I think I've found this one -- a missing INCREF in print_error!
 
 (?) (maybe) a bad .pyc file (with old magic number) causes the .py
 file to be ignored
 
-(-) Sunos4.0.2 / 386 configure bugs:
+(?) Sunos4.0.2 / 386 configure bugs:
 	- timelocal instead of mktime
 	- unistd.h doesn't declare some functions
+(don't know what to do about this)
 
 Bugs found in 1.0.2 and fixed in 1.0.3
 --------------------------------------
@@ -107,18 +115,22 @@
 Bugs found in 1.0.1 and not yet fixed
 -------------------------------------
 
-(-) modsupport.c(vmkvalue): on systems where va_list is an array, the
+(?) modsupport.c(vmkvalue): on systems where va_list is an array, the
 calls to do_mkvalue and do_mktuple don't want an "&" before va.
+(don't know what to do about this)
 
 (?) threads are slow on Solaris 2
+(so what?)
 
-(?) threads cause myreadline.c's readline() to think it sees an EOF.
+(*) threads cause myreadline.c's readline() to think it sees an EOF.
+(I *think* I've fixed this, by testing for EINTR)
 
-(-) min() on PC version generates wrong result (i.e. same as max())
+(?) min() on PC version generates wrong result (i.e. same as max())
     [this happens on SoftPC -- don't know about other systems]
+(can't find the reason -- may be SoftPC bug)
 
-(-) flp.py cache bug: if the cache only contains one form, asking for
-all forms returns only the cashed form
+(*) flp.py cache bug: if the cache only contains one form, asking for
+all forms returns only the cached form
 
 Bugs found in 1.0.1 and fixed in 1.0.2
 --------------------------------------
@@ -146,7 +158,7 @@
 (?) there appears to be something wrong with gcc and -ldl on some
 SunOS 4.1.3 systems
 
-(-) jredfords reports core dump with float literals
+(?) jredfords reports core dump with float literals
 
 BUGS found in 1.0.0 and fixed in 1.0.1
 --------------------------------------