Re: Crash during access_keymap

2005-11-14 Thread YAMAMOTO Mitsuharu
> On Tue, 15 Nov 2005 00:42:57 -0500, "Richard M. Stallman" <[EMAIL 
> PROTECTED]> said:

> If the problem is reproducible, it should be fairly straightforward
> to debug.  Is there clobbered data or not?

I myself don't see the problem, but according to the report from
David, some keymap seems to be clobbered.

>> I think compile-time analysis would not become perfect because of
>> dynamic bindings.

> Sorry, I don't understand.  Symbols are never copied to pure space,
> so their bindings, whether dynamic or not, can't cause this kind of
> problem.

I meant a kind of analysis to ensure that any literals inside a
function are not modified.  In dynamic scoping environment, objects
exposed to another function are not limited to those are passed via
arguments.

>> On some systems including Mac OS X, the pure storage is not
>> remapped to the text segment.  But still one can set watchpoint to
>> the array `pure' to do run-time check.

> I don't follow.  Run-time check of what?
 
To detect the case that the contents of the pure storage are changed
accidentally.  It actually occurred when I tried preloading
international/encoded-kb.elc.  Maybe CHECK_IMPURE should be added to
Fccl_execute_on_string?

 YAMAMOTO Mitsuharu
[EMAIL PROTECTED]


___
Emacs-pretest-bug mailing list
Emacs-pretest-bug@gnu.org
http://lists.gnu.org/mailman/listinfo/emacs-pretest-bug


Re: set-window-point

2005-11-14 Thread Richard M. Stallman
Yes, you're right.  If I use the patch below it works.  Shall I install
it, or is it a bug in set-window-point?  If it's not a bug, I think
this behaviour should be documented.

Please install it.

I think the failure of set-window-point in this case is a bug,
but I don't know whether we will be able to fix it.  Can someone
figure out why it fails to take effect in this case?



___
Emacs-pretest-bug mailing list
Emacs-pretest-bug@gnu.org
http://lists.gnu.org/mailman/listinfo/emacs-pretest-bug


Re: No default value, but prompt says there is one: customize-variable

2005-11-14 Thread Richard M. Stallman
Does this fix give good results?

Index: cus-edit.el
===
RCS file: /cvsroot/emacs/emacs/lisp/cus-edit.el,v
retrieving revision 1.237
diff -c -c -r1.237 cus-edit.el
*** cus-edit.el 23 Oct 2005 17:40:38 -  1.237
--- cus-edit.el 15 Nov 2005 04:26:45 -
***
*** 497,503 
(if (and (symbolp v) (custom-variable-p v))
(format "Customize option (default %s): " v)
  "Customize option: ")
!   obarray 'custom-variable-p t))
   (list (if (equal val "")
   (if (symbolp v) v nil)
 (intern val)
--- 497,504 
(if (and (symbolp v) (custom-variable-p v))
(format "Customize option (default %s): " v)
  "Customize option: ")
!   obarray 'custom-variable-p t nil nil
!   (and (symbolp v) (symbol-name v
   (list (if (equal val "")
   (if (symbolp v) v nil)
 (intern val)
***
*** 798,804 
(interactive)
(let ((children custom-options))
  (mapc (lambda (widget)
!   (and (widget-apply widget :custom-standard-value)
 (if (memq (widget-get widget :custom-state)
   '(modified set changed saved rogue))
 (widget-apply widget :custom-reset-standard
--- 799,806 
(interactive)
(let ((children custom-options))
  (mapc (lambda (widget)
!   (and (widget-get widget :custom-standard-value)
!(widget-apply widget :custom-standard-value)
 (if (memq (widget-get widget :custom-state)
   '(modified set changed saved rogue))
 (widget-apply widget :custom-reset-standard
***
*** 3397,3403 
  
  (define-widget 'face 'symbol
"A Lisp face name (with sample)."
!   :format "%t: (%{sample%}) %v"
:tag "Face"
:value 'default
:sample-face-get 'widget-face-sample-face-get
--- 3399,3405 
  
  (define-widget 'face 'symbol
"A Lisp face name (with sample)."
!   :format "%{%t%}: (%{sample%}) %v"
:tag "Face"
:value 'default
:sample-face-get 'widget-face-sample-face-get


___
Emacs-pretest-bug mailing list
Emacs-pretest-bug@gnu.org
http://lists.gnu.org/mailman/listinfo/emacs-pretest-bug


Re: Crash during access_keymap

2005-11-14 Thread Richard M. Stallman
Yeah, I only thought about the case that a pointer in the pure storage
are changed so as to point to an impure object during the execution of
a dumped one, but that may also occur in a dumping session.

Pure objects should never be changed; that's why it is ok to make them
pure.  The access primitives to modify slost in types that can be pure
are supposed to detect such an attempt and signal errors, with
CHECK_IMPURE

If any such primitive fails to use CHECK_IMPURE, let's just fix it.


___
Emacs-pretest-bug mailing list
Emacs-pretest-bug@gnu.org
http://lists.gnu.org/mailman/listinfo/emacs-pretest-bug


Re: Crash during access_keymap

2005-11-14 Thread Richard M. Stallman
It seems to be possible to have a check_pure_storage function which
would traverse pure storage and validate that it only refers to
other pure object -- and also that pure storage only contains
valid objects (e.g. I don't think storing a buffer or window object
in pure storage makes any sense).

If we conclude that this problem is real, we could solve it
much more easily than that.  When copying an object to pure space,
any time it points to an object that isn't copied, we could verify
that that object will be protected in some other way.  If not, we could
staticpro the pure slot.


___
Emacs-pretest-bug mailing list
Emacs-pretest-bug@gnu.org
http://lists.gnu.org/mailman/listinfo/emacs-pretest-bug


Re: Crash during access_keymap

2005-11-14 Thread Richard M. Stallman
David (and others) are distributing precompiled GNU Emacs binaries
with additional files preloaded.  And they see a problem (so-called
"commandp" one) which I don't see with the CVS version.  I suspect
this is due to the situation above, but there's no evidence yet.

If the problem is reproducible, it should be fairly straightforward to
debug.  Is there clobbered data or not?

> If so, can you see a general rule for how to prevent it from
> happening?

I think compile-time analysis would not become perfect because of
dynamic bindings.

Sorry, I don't understand.  Symbols are never copied to pure space,
so their bindings, whether dynamic or not, can't cause this kind
of problem.

On some systems including Mac OS X, the pure storage is not remapped
to the text segment.  But still one can set watchpoint to the array
`pure' to do run-time check.

I don't follow.  Run-time check of what?
 


___
Emacs-pretest-bug mailing list
Emacs-pretest-bug@gnu.org
http://lists.gnu.org/mailman/listinfo/emacs-pretest-bug


Re: Carbon with -nw: kCGErrorRangeCheck / Abort trap

2005-11-14 Thread YAMAMOTO Mitsuharu
> On Mon, 14 Nov 2005 12:14:39 +, David Reitter <[EMAIL PROTECTED]> 
> said:

> The Carbon port starts up in TTY mode when given the -nw parameter.

> When logged in as non-console user, i.e. remotely, the process
> crashes.

> To reproduce:

> ssh [EMAIL PROTECTED] (...)
> lucy:/Volumes/Sista/Applications/Emacs.app/Contents/MacOS test$ ./Emacs -nw
> kCGErrorRangeCheck : Window Server communications from outside of session 
> allowed for root and console user only
> INIT_Processeses(), could not establish the default connection to the 
> WindowServer.
> Fatal error (6)Abort trap

Thanks for the report.  I just installed a fix.

 YAMAMOTO Mitsuharu
[EMAIL PROTECTED]


___
Emacs-pretest-bug mailing list
Emacs-pretest-bug@gnu.org
http://lists.gnu.org/mailman/listinfo/emacs-pretest-bug


weird defadvice bug with byte-compilation

2005-11-14 Thread Drew Adams
This is a weird one. I've pared it down to the bare bones, I think -
if I comment out any part of this, the bug doesn't occur. This
obviously comes from a larger context - when it is pared down, the
code doesn't make much sense, of course.

If the stuff is in the same file, or the order is different, no bug
(error). It must be like this: two files, one of which is compiled and
required by the other. And the requiring file must have "compile" in
its defadvice.

Two files:

File 1: foo.el
--

(defvar mymap nil "")

(let ((map (make-sparse-keymap "II")))
  (setq mymap (make-sparse-keymap))
  (define-key menu-bar-search-menu [ise]  '("" . ise))
  (put 'ise 'menu-enable '(and my-mode))
  (push (cons 'my-mode mymap) minor-mode-map-alist))

(defadvice next-history-element (after  activate) "" my-mode)

(provide 'foo)

File 2: bar.el
--

(defconst special-display-regexps '("[ ]?[*][^*]+[*]"))

(defvar drews-lisp-dir "C:\\drews-lisp-20" "")
(setq load-path (append (list drews-lisp-dir) load-path))


(defadvice occur-mode-goto-occurrence
  (around jj activate compile)
  ""
  ad-do-it)

(require 'foo)

Instructions:
-

1. emacs -q

2. Byte-compile foo.el (it doesn't matter if it's compiled on Emacs 20
   or 22). `C-x C-c'.

3. emacs -q(Emacs 22)

4. Visit bar.el - don't load it.

5. Select everything in bar.el except the (require 'foo), and do
`eval-region'.

6. Put the cursor just after the (require 'foo) and do `C-x C-e'. (Don't
select it and do eval-region - that doesn't produce the bug!)

You will get this error backtrace:

Debugger entered--Lisp error: (void-variable my-mode)
  (and my-mode)
  x-create-frame(((visibility) (height . 14) (width . 80) (unsplittable .
t)))
  x-create-frame-with-faces(((height . 14) (width . 80) (unsplittable . t)))
  make-frame(((height . 14) (width . 80) (unsplittable . t)))
  special-display-popup-frame(#)
  display-buffer(#)
  display-warning(bytecomp "reference to free variable `my-mode'" :warning
"*Compile-Log*")
  byte-compile-log-warning("reference to free variable `my-mode'" t
:warning)
  byte-compile-warn("reference to free variable `%s'" my-mode)
  byte-compile-variable-ref(byte-varref my-mode)
  byte-compile-form(my-mode t)
  byte-compile-body(((setq ad-return-value (ad-Orig-next-history-element n))
my-mode ad-return-value) nil)
  byte-compile-let((let (ad-return-value) (setq ad-return-value
(ad-Orig-next-history-element n)) my-mode ad-return-value))
  byte-compile-form((let (ad-return-value) (setq ad-return-value
(ad-Orig-next-history-element n)) my-mode ad-return-value) nil)
  byte-compile-top-level((progn (let (ad-return-value) (setq ad-return-value
...) my-mode ad-return-value)) nil lambda)
  byte-compile-lambda((lambda (n) "$ad-doc: next-history-element$"
(interactive "p") (let (ad-return-value) (setq ad-return-value ...) my-mode
ad-return-value)))
  #[nil "???\n
\f
??


7. `C-x C-c'

You will get a pop-up message with Yes/No buttons that says this:

Emacs Abort Dialog

"A fatal error has occurred! Would you like to attach a debugger? Select YES
to debu, NO to abort Emacs"

If you select Yes, you get a Window program exception and an invitation to
send the details to Microsoft. The error report contents are these:

Exception Information
Code 0x8003 Flags: 0x
Record: 0x (didn't count 'em) Address: 0x77f75a58

System Information
Windows NT 5.1 Build: 2600
CPU Vendor Code etc. blah blah blah

Module 1
emacs.exe
blah blah

Module 2
ntdll.dll
blah blah

Module 3
kernel32.dll
blah blah

Module 4
msvcrt.dll
blah blah

etc. etc.


In GNU Emacs 22.0.50.1 (i386-mingw-nt5.1.2600)
 of 2005-06-26 on NONIQPC
X server distributor `Microsoft Corp.', version 5.1.2600
configured using `configure --with-gcc
(3.3) --cflags -I../../jpeg-6b-3/include -I../../libpng-1.2.8/include -I../.
./tiff-3.6.1-2/include -I../../xpm-nox-4.2.0/include -I../../zlib-1.2.2/incl
ude'




___
Emacs-pretest-bug mailing list
Emacs-pretest-bug@gnu.org
http://lists.gnu.org/mailman/listinfo/emacs-pretest-bug


Re: No i-search for € in iso-8859-16 coded buffer

2005-11-14 Thread Juri Linkov
>> Is there a lisp syntax for U+20AC?
>
> AFAIK, no.  Perhaps #u20AC is a good syntax for this.
>
> Perl uses the "\x{...}" notation for Unicode characters.  Doing the
> same in Emacs would produce #x{20AC}.  Also Perl has the notation for
> Unicode character names: \N{EURO SIGN}.  In Emacs this would be
> like #u{EURO SIGN}.

And Common Lisp uses the notation #\euro_sign, but IMO it is not quite
nice, because using official Unicode character names requires replacing
spaces with underscores.

-- 
Juri Linkov
http://www.jurta.org/emacs/



___
Emacs-pretest-bug mailing list
Emacs-pretest-bug@gnu.org
http://lists.gnu.org/mailman/listinfo/emacs-pretest-bug


Re: No i-search for € in iso-8859-16 coded buffer

2005-11-14 Thread Peter Dyballa


Am 14.11.2005 um 21:50 schrieb Juri Linkov:


I could live with this decision, but I would prefer a state in which
the characters could be found.


You can use `M-x unify-8859-on-decoding-mode' to toggle the charset of
characters you want to search with isearch.


This unify means here a divide? An indicator which characters are right 
now seekable would be nice ...



  The emacs-unicode-2 branch doesn't have this problem.


I knew my preference for this one didn't come out of the blue ...

--
Greetings

  Pete

Either this man is dead or my watch has stopped. - Groucho Marx



___
Emacs-pretest-bug mailing list
Emacs-pretest-bug@gnu.org
http://lists.gnu.org/mailman/listinfo/emacs-pretest-bug


Re: No i-search for € in iso-8859-16 coded buffer

2005-11-14 Thread Juri Linkov
>>character: € (01235114, 342604, 0x53a4c, U+20AC)
> ...
>> I think it was a good change to use lisp-readable syntax for `M-:',
>> so the same syntax should be used for `C-x =' as well.
>
> Yeah...
>
> Is there a lisp syntax for U+20AC?

AFAIK, no.  Perhaps #u20AC is a good syntax for this.

Perl uses the "\x{...}" notation for Unicode characters.  Doing the
same in Emacs would produce #x{20AC}.  Also Perl has the notation for
Unicode character names: \N{EURO SIGN}.  In Emacs this would be
like #u{EURO SIGN}.

-- 
Juri Linkov
http://www.jurta.org/emacs/



___
Emacs-pretest-bug mailing list
Emacs-pretest-bug@gnu.org
http://lists.gnu.org/mailman/listinfo/emacs-pretest-bug


Re: No i-search for € in iso-8859-16 coded buffer

2005-11-14 Thread Juri Linkov
> I could live with this decision, but I would prefer a state in which 
> the characters could be found.

You can use `M-x unify-8859-on-decoding-mode' to toggle the charset of
characters you want to search with isearch.  The emacs-unicode-2 branch
doesn't have this problem.

-- 
Juri Linkov
http://www.jurta.org/emacs/



___
Emacs-pretest-bug mailing list
Emacs-pretest-bug@gnu.org
http://lists.gnu.org/mailman/listinfo/emacs-pretest-bug


customize-group completions

2005-11-14 Thread Juri Linkov
Almost half of all completions available from the completion list of
`customize-group' are not group names, but option names.  This is due
to the completion predicate in `customize-group':

(lambda (symbol)
  (or (get symbol 'custom-loads)
  (get symbol 'custom-group)))

It assumes that a group symbol has either `custom-loads' or `custom-group'
property.  Whereas `custom-group' is a reliable way to identify symbols
of customization groups, `custom-loads' is not, because non-groups symbols
have it too, since `custom-autoload' in loaddefs.el puts this property
on autoload options.  But `custom-autoload' also puts another property
`custom-autoload' on autoload options, and group symbols don't have
this property.  So how about filtering out symbols with
`custom-autoload' property?  This should leave only already loaded
groups and also groups with `custom-loads' property from cus-load.el:

(lambda (symbol)
  (or (and (get symbol 'custom-loads)
   (not (get symbol 'custom-autoload)))
  (get symbol 'custom-group)))

However, it is possible that there is a group in cus-load.el with the
same name as autoload option in loaddefs.el.  In this case, this name
won't get into the completion list.  Maybe a better solution is to put
`custom-group' property explicitly on every group symbol in cus-load.el?

-- 
Juri Linkov
http://www.jurta.org/emacs/



___
Emacs-pretest-bug mailing list
Emacs-pretest-bug@gnu.org
http://lists.gnu.org/mailman/listinfo/emacs-pretest-bug


Re: Two buglets in diary-list-entries

2005-11-14 Thread Stefan Monnier
> (i) In my init-file default-major-mode is set to text-mode and as a
> result, since diary-list-entries only checks for fundamental-mode, my
> diary file isn't automatically visited in diary-mode.

I've installed your patch for this, thank you.

> (ii) In the diary display (I use fancy-diary-display) there are
> unwanted blank lines between entries from the same day, which arise
> when the last line of the diary file or of any included files is a
> newline.  I usually don't add a newline myself when making a diary
> entry, so these seem to be coming from somewhere else.

Your patch modifies the buffer which is very unclean in a function which is
only supposed to extract data from it.  Does the patch below work as well?


Stefan


--- orig/lisp/calendar/diary-lib.el
+++ mod/lisp/calendar/diary-lib.el
@@ -472,7 +472,8 @@
  (forward-line 1)
  (while (looking-at "[ \t]")
(forward-line 1))
- (unless (eobp) (backward-char 1))
+ (unless (and (eobp) (not (bolp)))
+   (backward-char 1))
  (unless list-only
(remove-overlays date-start (point)
 'invisible 'diary))


___
Emacs-pretest-bug mailing list
Emacs-pretest-bug@gnu.org
http://lists.gnu.org/mailman/listinfo/emacs-pretest-bug


Re: No default value, but prompt says there is one: customize-variable

2005-11-14 Thread Juri Linkov
> Put cursor on this text in some buffer: Buffer-menu-mode-width.
>
> M-x customize-variable
>
> The prompt says that the default is Buffer-menu-mode-width, but
> completing-read is called with a nil DEF value, and you cannot pull
> Buffer-menu-mode-width into the minibuffer with M-n.

Thanks.  I fixed this.

-- 
Juri Linkov
http://www.jurta.org/emacs/



___
Emacs-pretest-bug mailing list
Emacs-pretest-bug@gnu.org
http://lists.gnu.org/mailman/listinfo/emacs-pretest-bug


RE: No default value, but prompt says there is one: customize-variable

2005-11-14 Thread Drew Adams
> Put cursor on this text in some buffer: Buffer-menu-mode-width.
>
> M-x customize-variable
>
> The prompt says that the default is Buffer-menu-mode-width, but
> completing-read is called with a nil DEF value, and you cannot pull
> Buffer-menu-mode-width into the minibuffer with M-n.

Thanks.  I fixed this.

Thanks. (That was quick!)


___
Emacs-pretest-bug mailing list
Emacs-pretest-bug@gnu.org
http://lists.gnu.org/mailman/listinfo/emacs-pretest-bug


No default value, but prompt says there is one: customize-variable

2005-11-14 Thread Drew Adams
emacs -q

Put cursor on this text in some buffer: Buffer-menu-mode-width.

M-x customize-variable

The prompt says that the default is Buffer-menu-mode-width, but
completing-read is called with a nil DEF value, and you cannot pull
Buffer-menu-mode-width into the minibuffer with M-n.


In GNU Emacs 22.0.50.1 (i386-mingw-nt5.1.2600)
 of 2005-06-26 on NONIQPC
X server distributor `Microsoft Corp.', version 5.1.2600
configured using `configure --with-gcc
(3.3) --cflags -I../../jpeg-6b-3/include -I../../libpng-1.2.8/include -I../.
./tiff-3.6.1-2/include -I../../xpm-nox-4.2.0/include -I../../zlib-1.2.2/incl
ude'



___
Emacs-pretest-bug mailing list
Emacs-pretest-bug@gnu.org
http://lists.gnu.org/mailman/listinfo/emacs-pretest-bug


Carbon with -nw: kCGErrorRangeCheck / Abort trap

2005-11-14 Thread David Reitter

The Carbon port starts up in TTY mode when given the -nw parameter.

When logged in as non-console user, i.e. remotely, the process crashes.

To reproduce:

ssh [EMAIL PROTECTED]
(...)
lucy:/Volumes/Sista/Applications/Emacs.app/Contents/MacOS test$ ./ 
Emacs  -nw
kCGErrorRangeCheck : Window Server communications from outside of  
session allowed for root and console user only
INIT_Processeses(), could not establish the default connection to the  
WindowServer.

Fatal error (6)Abort trap


One error occurs during bootstrapping (calls to temacs) when run as a  
user who is not root and isn't a locally logged in user, i.e. when  
building Emacs on  a server. Here, kCGErrorRangeCheck appears (but  
not the INIT_Processes one, I believe) and it doesn't lead to an abort.



This is a vanilla CVS build with  ./make-package --self-contained -- 
build-in-place

 

smime.p7s
Description: S/MIME cryptographic signature
___
Emacs-pretest-bug mailing list
Emacs-pretest-bug@gnu.org
http://lists.gnu.org/mailman/listinfo/emacs-pretest-bug


Re: Crash during access_keymap

2005-11-14 Thread YAMAMOTO Mitsuharu
> On Mon, 14 Nov 2005 10:49:03 +0100, [EMAIL PROTECTED] (Kim F. Storm) said:

> It seems to be possible to have a check_pure_storage function which
> would traverse pure storage and validate that it only refers to
> other pure object -- and also that pure storage only contains valid
> objects (e.g. I don't think storing a buffer or window object in
> pure storage makes any sense).

> This function only needed to be run once during the build process,
> e.g. just before undump.

Yeah, I only thought about the case that a pointer in the pure storage
are changed so as to point to an impure object during the execution of
a dumped one, but that may also occur in a dumping session.  The
latter cannot be caught by the watchpoint.

 YAMAMOTO Mitsuharu
[EMAIL PROTECTED]


___
Emacs-pretest-bug mailing list
Emacs-pretest-bug@gnu.org
http://lists.gnu.org/mailman/listinfo/emacs-pretest-bug


Re: No i-search for € in iso-8859-16 coded buffer

2005-11-14 Thread Peter Dyballa


Am 14.11.2005 um 02:03 schrieb Juri Linkov:


In a buffer starting with ';;; -*- mode: Text; coding: iso-8859-16;
-*-' (-r: in the mode-line) and holding the characters in the range
160-255 i-search for € is not successful:

€ = 244 = 164 = A4 = U+20AC = E2 82 AC : EURO SIGN


That's because ISO-8859-15 (Latin-9) is coded internally
with latin-iso8859-15 charset, but ISO-8859-16 (Latin-10)
is coded with mule-unicode-0100-24ff charset.  I don't know a
reason for this decision.  Perhaps there are some ISO-8859-16
characters that exist only in mule-unicode-0100-24ff, and not
in any of latin-iso8859-... charsets.


I could live with this decision, but I would prefer a state in which 
the characters could be found.


Besides the € there are these too:

Ą = 241 = 161 = A1 = U+0104 =C4 84 : LATIN CAPITAL LETTER A WITH 
OGONEK
ą = 242 = 162 = A2 = U+0105 =C4 85 : LATIN SMALL LETTER A WITH 
OGONEK
Ł = 243 = 163 = A3 = U+0141 =C5 81 : LATIN CAPITAL LETTER L WITH 
STROKE

„ = 245 = 165 = A5 = U+201E = E2 80 9E : DOUBLE LOW-9 QUOTATION MARK
š = 250 = 168 = A8 = U+0160 =C5 A1 : LATIN SMALL LETTER S WITH CARON
Ș = 252 = 170 = AA = U+0218 =C8 98 : LATIN CAPITAL LETTER S WITH 
COMMA BELOW
Ź = 254 = 172 = AC = U+0179 =C5 B9 : LATIN CAPITAL LETTER Z WITH 
ACUTE

ź = 256 = 174 = AE = U+017A =C5 BA : LATIN SMALL LETTER Z WITH ACUTE
Ż = 257 = 175 = AF = U+017B =C5 BB : LATIN CAPITAL LETTER Z WITH 
DOT ABOVE
Č = 262 = 178 = B2 = U+010C =C4 8C : LATIN CAPITAL LETTER C WITH 
CARON
ł = 263 = 179 = B3 = U+0142 =C5 82 : LATIN SMALL LETTER L WITH 
STROKE
Ž = 264 = 180 = B4 = U+017D =C5 BD : LATIN CAPITAL LETTER Z WITH 
CARON

” = 265 = 181 = B5 = U+201D = E2 80 9D : RIGHT DOUBLE QUOTATION MARK
ž = 270 = 184 = B8 = U+017E =C5 BE : LATIN SMALL LETTER Z WITH CARON
č = 271 = 185 = B9 = U+010D =C4 8D : LATIN SMALL LETTER C WITH CARON
ș = 272 = 186 = BA = U+0219 =C8 99 : LATIN SMALL LETTER S WITH 
COMMA BELOW

Œ = 274 = 188 = BC = U+0152 =C5 92 : LATIN CAPITAL LIGATURE OE
œ = 275 = 189 = BD = U+0153 =C5 93 : LATIN SMALL LIGATURE OE
Ÿ = 276 = 190 = BE = U+0178 =C5 B8 : LATIN CAPITAL LETTER Y WITH 
DIAERESIS
ż = 277 = 191 = BF = U+017C =C5 BC : LATIN SMALL LETTER Z WITH DOT 
ABOVE
Ă = 303 = 195 = C3 = U+0102 =C4 82 : LATIN CAPITAL LETTER A WITH 
BREVE
Ć = 305 = 197 = C5 = U+0106 =C4 86 : LATIN CAPITAL LETTER C WITH 
ACUTE
Ń = 321 = 209 = D1 = U+0143 =C5 83 : LATIN CAPITAL LETTER N WITH 
ACUTE
Ő = 325 = 213 = D5 = U+0150 =C5 90 : LATIN CAPITAL LETTER O WITH 
DOUBLE ACUTE
Ś = 327 = 215 = D7 = U+015A =C5 9A : LATIN CAPITAL LETTER S WITH 
ACUTE
Ű = 330 = 216 = D8 = U+0170 =C5 B0 : LATIN CAPITAL LETTER U WITH 
DOUBLE ACUTE
Ę = 335 = 221 = DD = U+0118 =C4 98 : LATIN CAPITAL LETTER E WITH 
OGONEK
Ț = 336 = 222 = DE = U+021A =C8 9A : LATIN CAPITAL LETTER T WITH 
COMMA BELOW

ă = 343 = 227 = E3 = U+0103 =C4 83 : LATIN SMALL LETTER A WITH BREVE
ć = 345 = 229 = E5 = U+0107 =C4 87 : LATIN SMALL LETTER C WITH ACUTE
ń = 361 = 241 = F1 = U+0144 =C5 84 : LATIN SMALL LETTER N WITH ACUTE
ő = 365 = 245 = F5 = U+0151 =C5 91 : LATIN SMALL LETTER O WITH 
DOUBLE ACUTE

ś = 367 = 247 = F7 = U+015B =C5 9B : LATIN SMALL LETTER S WITH ACUTE
ű = 370 = 248 = F8 = U+0171 =C5 B1 : LATIN SMALL LETTER U WITH 
DOUBLE ACUTE
ę = 375 = 253 = FD = U+0119 =C4 99 : LATIN SMALL LETTER E WITH 
OGONEK
ț = 376 = 254 = FE = U+021B =C8 9B : LATIN SMALL LETTER T WITH 
COMMA BELOW



--
Greetings

  Pete

"I love deadlines. I love the whooshing noise they make as they go by" 
(Douglas Adams)




___
Emacs-pretest-bug mailing list
Emacs-pretest-bug@gnu.org
http://lists.gnu.org/mailman/listinfo/emacs-pretest-bug


Re: Crash during access_keymap

2005-11-14 Thread Kim F. Storm
YAMAMOTO Mitsuharu <[EMAIL PROTECTED]> writes:

>> On Sun, 13 Nov 2005 23:54:29 -0500, "Richard M. Stallman" <[EMAIL 
>> PROTECTED]> said:
>
>>> So, if there's a non-pure object that is only pointed to by pure
>>> objects, which may happen if the assumption for the pure storage is
>>> violated, then the object is reachable but get collected.
>
>> Is there evidence that this is in fact happening?
>
> David (and others) are distributing precompiled GNU Emacs binaries
> with additional files preloaded.  And they see a problem (so-called
> "commandp" one) which I don't see with the CVS version.  I suspect
> this is due to the situation above, but there's no evidence yet.
>
>> If so, can you see a general rule for how to prevent it from
>> happening?
>
> I think compile-time analysis would not become perfect because of
> dynamic bindings.
>
> On some systems including Mac OS X, the pure storage is not remapped
> to the text segment.  But still one can set watchpoint to the array
> `pure' to do run-time check.  I think it is sufficient if additional
> preloading is for developers/power-users rather than for ordinary
> users.

It seems to be possible to have a check_pure_storage function which
would traverse pure storage and validate that it only refers to
other pure object -- and also that pure storage only contains
valid objects (e.g. I don't think storing a buffer or window object
in pure storage makes any sense).

This function only needed to be run once during the build process,
e.g. just before undump.

-- 
Kim F. Storm <[EMAIL PROTECTED]> http://www.cua.dk



___
Emacs-pretest-bug mailing list
Emacs-pretest-bug@gnu.org
http://lists.gnu.org/mailman/listinfo/emacs-pretest-bug


Re: Crash during access_keymap

2005-11-14 Thread YAMAMOTO Mitsuharu
> On Sun, 13 Nov 2005 23:54:29 -0500, "Richard M. Stallman" <[EMAIL 
> PROTECTED]> said:

>> So, if there's a non-pure object that is only pointed to by pure
>> objects, which may happen if the assumption for the pure storage is
>> violated, then the object is reachable but get collected.

> Is there evidence that this is in fact happening?

David (and others) are distributing precompiled GNU Emacs binaries
with additional files preloaded.  And they see a problem (so-called
"commandp" one) which I don't see with the CVS version.  I suspect
this is due to the situation above, but there's no evidence yet.

> If so, can you see a general rule for how to prevent it from
> happening?

I think compile-time analysis would not become perfect because of
dynamic bindings.

On some systems including Mac OS X, the pure storage is not remapped
to the text segment.  But still one can set watchpoint to the array
`pure' to do run-time check.  I think it is sufficient if additional
preloading is for developers/power-users rather than for ordinary
users.

 YAMAMOTO Mitsuharu
[EMAIL PROTECTED]


___
Emacs-pretest-bug mailing list
Emacs-pretest-bug@gnu.org
http://lists.gnu.org/mailman/listinfo/emacs-pretest-bug