diff options
| author | Miles Bader | 2004-06-28 07:56:49 +0000 |
|---|---|---|
| committer | Miles Bader | 2004-06-28 07:56:49 +0000 |
| commit | 327719ee8a3fcdb36ed6acaf6d8cb5fbdf0bd801 (patch) | |
| tree | 21de188e13b5e41a79bb50040933072ae0235217 /src/data.c | |
| parent | 852f73b7fa7b71910282eacb6263b3ecfd4ee783 (diff) | |
| parent | 376de73927383d6062483db10b8a82448505f52b (diff) | |
| download | emacs-327719ee8a3fcdb36ed6acaf6d8cb5fbdf0bd801.tar.gz emacs-327719ee8a3fcdb36ed6acaf6d8cb5fbdf0bd801.zip | |
Revision: miles@gnu.org--gnu-2004/emacs--unicode--0--patch-15
Merge from emacs--cvs-trunk--0
Patches applied:
* miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-218
- miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-220
Update from CVS
* miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-221
Restore deleted tagline in etc/TUTORIAL.ru
* miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-222
- miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-228
Update from CVS
* miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-229
Remove TeX output files from the archive
* miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-230
- miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-247
Update from CVS
* miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-248
src/lisp.h (CYCLE_CHECK): Macro moved from xfaces.c
* miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-249
- miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-256
Update from CVS
* miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-258
- miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-263
Update from CVS
* miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-264
Update from CVS: lispref/display.texi: emacs -> Emacs.
* miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-265
- miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-274
Update from CVS
* miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-275
Update from CVS: man/makefile.w32-in: Revert last change
* miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-276
- miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-295
Update from CVS
* miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-296
Allow restarting an existing debugger session that's exited
* miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-297
- miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-299
Update from CVS
* miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-300
- miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-327
Update from CVS
* miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-328
Update from CVS: src/.gdbinit (xsymbol): Fix last change.
* miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-329
- miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-344
Update from CVS
* miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-345
Tweak source regexps so that building in place won't cause problems
* miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-346
- miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-351
Update from CVS
* miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-352
Update from CVS: lisp/flymake.el: New file.
* miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-353
- miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-361
Update from CVS
* miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-362
Support " [...]" style defaults in minibuffer-electric-default-mode
* miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-363
(read-number): Use canonical format for default in prompt.
* miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-364
- miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-367
Update from CVS
* miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-368
Improve display-supports-face-attributes-p on non-ttys
* miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-369
Rewrite face-differs-from-default-p
* miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-370
Move `display-supports-face-attributes-p' entirely into C code
* miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-371
Update from CVS
* miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-372
Simplify face-differs-from-default-p; don't consider :stipple.
* miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-373
Update from CVS
* miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-374
(tty_supports_face_attributes_p): Ensure attributes differ from default
* miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-375
- miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-376
Update from CVS
* miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-377
(Fdisplay_supports_face_attributes_p): Work around bootstrapping problem
* miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-378
- miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-380
Update from CVS
* miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-381
Face merging cleanups
* miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-382
- miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-384
Update from CVS
* miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-385
src/xfaces.c (push_named_merge_point): Return 0 if a cycle is detected
* miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-386
- miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-395
Update from CVS
* miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-396
Tweak arch tagging to make build/install-in-place less annoying
* miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-397
Work around vc-arch problems when building eshell
* miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-398
Tweak permissions
* miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-399
Tweak directory permissions
* miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-400
Update from CVS
* miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-401
More build-in-place tweaking of arch tagging
* miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-402
Update from CVS
* miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-403
Yet more build-in-place tweaking of arch tagging
* miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-404
- miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-409
Update from CVS
* miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-410
Make sure image types are initialized for lookup too
* miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-411
- miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-416
Update from CVS
Diffstat (limited to 'src/data.c')
| -rw-r--r-- | src/data.c | 42 |
1 files changed, 30 insertions, 12 deletions
diff --git a/src/data.c b/src/data.c index 92e1c75dee4..935c4348bb7 100644 --- a/src/data.c +++ b/src/data.c | |||
| @@ -761,6 +761,19 @@ function with `&rest' args, or `unevalled' for a special form. */) | |||
| 761 | return Fcons (make_number (minargs), make_number (maxargs)); | 761 | return Fcons (make_number (minargs), make_number (maxargs)); |
| 762 | } | 762 | } |
| 763 | 763 | ||
| 764 | DEFUN ("subr-name", Fsubr_name, Ssubr_name, 1, 1, 0, | ||
| 765 | doc: /* Return name of subroutine SUBR. | ||
| 766 | SUBR must be a built-in function. */) | ||
| 767 | (subr) | ||
| 768 | Lisp_Object subr; | ||
| 769 | { | ||
| 770 | const char *name; | ||
| 771 | if (!SUBRP (subr)) | ||
| 772 | wrong_type_argument (Qsubrp, subr); | ||
| 773 | name = XSUBR (subr)->symbol_name; | ||
| 774 | return make_string (name, strlen (name)); | ||
| 775 | } | ||
| 776 | |||
| 764 | DEFUN ("interactive-form", Finteractive_form, Sinteractive_form, 1, 1, 0, | 777 | DEFUN ("interactive-form", Finteractive_form, Sinteractive_form, 1, 1, 0, |
| 765 | doc: /* Return the interactive form of CMD or nil if none. | 778 | doc: /* Return the interactive form of CMD or nil if none. |
| 766 | CMD must be a command. Value, if non-nil, is a list | 779 | CMD must be a command. Value, if non-nil, is a list |
| @@ -1394,7 +1407,7 @@ local bindings in certain buffers. */) | |||
| 1394 | } | 1407 | } |
| 1395 | 1408 | ||
| 1396 | DEFUN ("set-default", Fset_default, Sset_default, 2, 2, 0, | 1409 | DEFUN ("set-default", Fset_default, Sset_default, 2, 2, 0, |
| 1397 | doc: /* Set SYMBOL's default value to VAL. SYMBOL and VAL are evaluated. | 1410 | doc: /* Set SYMBOL's default value to VALUE. SYMBOL and VALUE are evaluated. |
| 1398 | The default value is seen in buffers that do not have their own values | 1411 | The default value is seen in buffers that do not have their own values |
| 1399 | for this variable. */) | 1412 | for this variable. */) |
| 1400 | (symbol, value) | 1413 | (symbol, value) |
| @@ -1455,11 +1468,11 @@ The default value of a variable is seen in buffers | |||
| 1455 | that do not have their own values for the variable. | 1468 | that do not have their own values for the variable. |
| 1456 | 1469 | ||
| 1457 | More generally, you can use multiple variables and values, as in | 1470 | More generally, you can use multiple variables and values, as in |
| 1458 | (setq-default SYMBOL VALUE SYMBOL VALUE...) | 1471 | (setq-default VAR VALUE VAR VALUE...) |
| 1459 | This sets each SYMBOL's default value to the corresponding VALUE. | 1472 | This sets each VAR's default value to the corresponding VALUE. |
| 1460 | The VALUE for the Nth SYMBOL can refer to the new default values | 1473 | The VALUE for the Nth VAR can refer to the new default values |
| 1461 | of previous SYMs. | 1474 | of previous VARs. |
| 1462 | usage: (setq-default SYMBOL VALUE [SYMBOL VALUE...]) */) | 1475 | usage: (setq-default VAR VALUE [VAR VALUE...]) */) |
| 1463 | (args) | 1476 | (args) |
| 1464 | Lisp_Object args; | 1477 | Lisp_Object args; |
| 1465 | { | 1478 | { |
| @@ -1946,8 +1959,8 @@ or a byte-code object. IDX starts at 0. */) | |||
| 1946 | if (idxval < 0 || idxval >= XBOOL_VECTOR (array)->size) | 1959 | if (idxval < 0 || idxval >= XBOOL_VECTOR (array)->size) |
| 1947 | args_out_of_range (array, idx); | 1960 | args_out_of_range (array, idx); |
| 1948 | 1961 | ||
| 1949 | val = (unsigned char) XBOOL_VECTOR (array)->data[idxval / BITS_PER_CHAR]; | 1962 | val = (unsigned char) XBOOL_VECTOR (array)->data[idxval / BOOL_VECTOR_BITS_PER_CHAR]; |
| 1950 | return (val & (1 << (idxval % BITS_PER_CHAR)) ? Qt : Qnil); | 1963 | return (val & (1 << (idxval % BOOL_VECTOR_BITS_PER_CHAR)) ? Qt : Qnil); |
| 1951 | } | 1964 | } |
| 1952 | else if (CHAR_TABLE_P (array)) | 1965 | else if (CHAR_TABLE_P (array)) |
| 1953 | { | 1966 | { |
| @@ -2005,13 +2018,13 @@ bool-vector. IDX starts at 0. */) | |||
| 2005 | if (idxval < 0 || idxval >= XBOOL_VECTOR (array)->size) | 2018 | if (idxval < 0 || idxval >= XBOOL_VECTOR (array)->size) |
| 2006 | args_out_of_range (array, idx); | 2019 | args_out_of_range (array, idx); |
| 2007 | 2020 | ||
| 2008 | val = (unsigned char) XBOOL_VECTOR (array)->data[idxval / BITS_PER_CHAR]; | 2021 | val = (unsigned char) XBOOL_VECTOR (array)->data[idxval / BOOL_VECTOR_BITS_PER_CHAR]; |
| 2009 | 2022 | ||
| 2010 | if (! NILP (newelt)) | 2023 | if (! NILP (newelt)) |
| 2011 | val |= 1 << (idxval % BITS_PER_CHAR); | 2024 | val |= 1 << (idxval % BOOL_VECTOR_BITS_PER_CHAR); |
| 2012 | else | 2025 | else |
| 2013 | val &= ~(1 << (idxval % BITS_PER_CHAR)); | 2026 | val &= ~(1 << (idxval % BOOL_VECTOR_BITS_PER_CHAR)); |
| 2014 | XBOOL_VECTOR (array)->data[idxval / BITS_PER_CHAR] = val; | 2027 | XBOOL_VECTOR (array)->data[idxval / BOOL_VECTOR_BITS_PER_CHAR] = val; |
| 2015 | } | 2028 | } |
| 2016 | else if (CHAR_TABLE_P (array)) | 2029 | else if (CHAR_TABLE_P (array)) |
| 2017 | { | 2030 | { |
| @@ -2581,6 +2594,10 @@ usage: (/ DIVIDEND DIVISOR &rest DIVISORS) */) | |||
| 2581 | int nargs; | 2594 | int nargs; |
| 2582 | Lisp_Object *args; | 2595 | Lisp_Object *args; |
| 2583 | { | 2596 | { |
| 2597 | int argnum; | ||
| 2598 | for (argnum = 2; argnum < nargs; argnum++) | ||
| 2599 | if (FLOATP (args[argnum])) | ||
| 2600 | return float_arith_driver (0, 0, Adiv, nargs, args); | ||
| 2584 | return arith_driver (Adiv, nargs, args); | 2601 | return arith_driver (Adiv, nargs, args); |
| 2585 | } | 2602 | } |
| 2586 | 2603 | ||
| @@ -3215,6 +3232,7 @@ syms_of_data () | |||
| 3215 | defsubr (&Slognot); | 3232 | defsubr (&Slognot); |
| 3216 | defsubr (&Sbyteorder); | 3233 | defsubr (&Sbyteorder); |
| 3217 | defsubr (&Ssubr_arity); | 3234 | defsubr (&Ssubr_arity); |
| 3235 | defsubr (&Ssubr_name); | ||
| 3218 | 3236 | ||
| 3219 | XSYMBOL (Qwholenump)->function = XSYMBOL (Qnatnump)->function; | 3237 | XSYMBOL (Qwholenump)->function = XSYMBOL (Qnatnump)->function; |
| 3220 | 3238 | ||