Subject: bug#9981: 24.0.91; mismatch in doc for `buffer-visibility-spec'

From: "Drew Adams" <[email-masked]>
Date: Sun, 6 Nov 2011 17:33:41 -0800

(elisp) Invisible Text says this for a list value:
 
 Each element of the list specifies a criterion for
 invisibility; if a character's `invisible' property fits any
 one of these criteria, the character is invisible.  The list
 can have two kinds of elements:
 
 `ATOM'
   A character is invisible if its `invisible' property
   value is ATOM or if it is a list with ATOM as a member.
 
 `(ATOM . t)'
   A character is invisible if its `invisible' property
   value is ATOM or if it is a list with ATOM as a member.
   Moreover, a sequence of such characters displays as an
   ellipsis.
  
But the doc string says this:
 
 "a text character is invisible if its `invisible' property is an
  element in that list (or is a list with members in common)."
 
That's not the same thing.  The doc string does not speak to the second case for
the spec, (ATOM . t).  A char with `invisible' property of `foo' is neither a
member of the invisibility spec `((foo . t))' nor is it a list with the element
(foo . t).  Similarly for a char with `invisible' property of (foo).

According to the doc string, to be invisible with that spec, a char would have
to either be (foo . t) or be a list with (foo . t) as an element.

What's more, the doc string does not state that the form of the list elements is
in fact prescribed: ATOM or (ATOM . t).

In GNU Emacs 24.0.91.1 (i386-mingw-nt5.1.2600) of 2011-10-30 on MARVIN
 Windowing system distributor `Microsoft Corp.', version 5.1.2600
 configured using `configure --with-gcc (4.6) --no-opt --cflags
 -I"D:/devel/emacs/libs/libXpm-3.5.8/include"
 -I"D:/devel/emacs/libs/libXpm-3.5.8/src"
 -I"D:/devel/emacs/libs/libpng-dev_1.4.3-1/include"
 -I"D:/devel/emacs/libs/zlib-dev_1.2.5-2/include"
 -I"D:/devel/emacs/libs/giflib-4.1.4-1/include"
 -I"D:/devel/emacs/libs/jpeg-6b-4/include"
 -I"D:/devel/emacs/libs/tiff-3.8.2-1/include"
 -I"D:/devel/emacs/libs/gnutls-2.10.1/include" --ldflags
 -L"D:/devel/emacs/libs/gnutls-2.10.1/lib"'