Mercurial > hg > xemacs-beta
comparison src/lisp-union.h @ 801:2b676dc88c66
[xemacs-hg @ 2002-04-01 03:58:02 by ben]
bug fixes (e.g. ballooning on X windows)
Makefile.in.in: Try to make the Makefile notice if its source Makefile.in.in is
changed, and regenerate and run itself.
Use a bigger default SHEAP_ADJUSTMENT on Cygwin; otherwise you
can't compile under Mule if a Lisp file has changed. (can't run
temacs)
TODO.ben-mule-21-5: update.
mule/mule-cmds.el: Hash the result of mswindows-get-language-environment-from-locale,
since it's very expensive (and causes huge ballooning of memory
under X Windows, since it's called from x-get-resource).
cl-extra.el, code-files.el, files.el, simple.el, subr.el, x-faces.el: Create new string-equal-ignore-case, based on built-in
compare-strings -- compare strings ignoring case without the need
to generate garbage by calling downcase. Use it in equalp and
elsewhere.
alloc.c, bytecode.c, chartab.c, data.c, elhash.c, emacs.c, eval.c, event-Xt.c, event-unixoid.c, extents.c, file-coding.c, fileio.c, fns.c, glyphs.c, gutter.c, lisp-union.h, lisp.h, mule-charset.c, nt.c, process-unix.c, process.c, specifier.c, symbols.c, sysdep.c, sysdep.h, text.c, toolbar.c: Try to implement GC triggering based on percentage of total memory
usage. Not currently activated (percentage set to 0) because not
quite working. Add `memory-usage' primitive to return XEmacs'
idea of its memory usage.
Add primitive compare-strings, compatible with FSF 21.1 -- can
compare any part of two strings, optionally ignoring case.
Improve qxe() functions in text.c for text comparison.
Use RETURN_NOT_REACHED to try to avoid warnings about unreachable
code.
Add volatile_make_int() to fix warning in unix_send_process().
author | ben |
---|---|
date | Mon, 01 Apr 2002 03:59:04 +0000 |
parents | a5954632b187 |
children | 6728e641994e |
comparison
equal
deleted
inserted
replaced
800:a5954632b187 | 801:2b676dc88c66 |
---|---|
92 obj.s.bits = 1; | 92 obj.s.bits = 1; |
93 obj.s.val = val; | 93 obj.s.val = val; |
94 return obj; | 94 return obj; |
95 } | 95 } |
96 | 96 |
97 | |
98 #ifdef __cplusplus | |
99 | |
100 #define volatile_make_int(val) make_int (val) | |
101 | |
102 #else | |
103 | |
97 /* Ugh, need different definition to avoid compiler complaint in | 104 /* Ugh, need different definition to avoid compiler complaint in |
98 unix_send_process() */ | 105 unix_send_process(). Furthermore, there's no way under C++, it seems, |
106 to declare something volatile and then return it. Perhaps I'd have to | |
107 assign to something else instead? But in any case, the warnings about | |
108 volatile clobbering doesn't occur in C++. I bet the thing is that C++ | |
109 already has a built-in system for dealing with non-local exits and such, | |
110 in a smart way that doesn't clobber registers, and incorporates | |
111 longjmp() into that. */ | |
99 INLINE_HEADER Lisp_Object volatile_make_int (EMACS_INT val); | 112 INLINE_HEADER Lisp_Object volatile_make_int (EMACS_INT val); |
100 INLINE_HEADER Lisp_Object | 113 INLINE_HEADER Lisp_Object |
101 volatile_make_int (EMACS_INT val) | 114 volatile_make_int (EMACS_INT val) |
102 { | 115 { |
103 volatile Lisp_Object obj; | 116 volatile Lisp_Object obj; |
104 obj.s.bits = 1; | 117 obj.s.bits = 1; |
105 obj.s.val = val; | 118 obj.s.val = val; |
106 return obj; | 119 return obj; |
107 } | 120 } |
121 | |
122 #endif /* __cplusplus */ | |
123 | |
108 | 124 |
109 INLINE_HEADER Lisp_Object make_char (Emchar val); | 125 INLINE_HEADER Lisp_Object make_char (Emchar val); |
110 INLINE_HEADER Lisp_Object | 126 INLINE_HEADER Lisp_Object |
111 make_char (Emchar val) | 127 make_char (Emchar val) |
112 { | 128 { |