aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorRichard M. Stallman2005-12-11 15:35:14 +0000
committerRichard M. Stallman2005-12-11 15:35:14 +0000
commit49daa5b1626a2d1fb3327ba27349127dd04156b3 (patch)
treecb47bad725a7e8d0e7139d0588d22df2453246e7 /src
parentd4c6530fc5e434228fc310b36483c04c94c8a745 (diff)
downloademacs-49daa5b1626a2d1fb3327ba27349127dd04156b3.tar.gz
emacs-49daa5b1626a2d1fb3327ba27349127dd04156b3.zip
(Fset_keymap_parent, store_in_keymap): Use CHECK_IMPURE.
(Flookup_key): Doc fix. (syms_of_keymap) <function-key-map>: Doc fix.
Diffstat (limited to 'src')
-rw-r--r--src/keymap.c12
1 files changed, 8 insertions, 4 deletions
diff --git a/src/keymap.c b/src/keymap.c
index 0f17753f186..4583d3121df 100644
--- a/src/keymap.c
+++ b/src/keymap.c
@@ -396,6 +396,7 @@ Return PARENT. PARENT should be nil or another keymap. */)
396 if (EQ (XCDR (prev), parent)) 396 if (EQ (XCDR (prev), parent))
397 RETURN_UNGCPRO (parent); 397 RETURN_UNGCPRO (parent);
398 398
399 CHECK_IMPURE (prev);
399 XSETCDR (prev, parent); 400 XSETCDR (prev, parent);
400 break; 401 break;
401 } 402 }
@@ -913,6 +914,7 @@ store_in_keymap (keymap, idx, def)
913 { 914 {
914 if (NATNUMP (idx) && XFASTINT (idx) < ASIZE (elt)) 915 if (NATNUMP (idx) && XFASTINT (idx) < ASIZE (elt))
915 { 916 {
917 CHECK_IMPURE (elt);
916 ASET (elt, XFASTINT (idx), def); 918 ASET (elt, XFASTINT (idx), def);
917 return def; 919 return def;
918 } 920 }
@@ -938,6 +940,7 @@ store_in_keymap (keymap, idx, def)
938 { 940 {
939 if (EQ (idx, XCAR (elt))) 941 if (EQ (idx, XCAR (elt)))
940 { 942 {
943 CHECK_IMPURE (elt);
941 XSETCDR (elt, def); 944 XSETCDR (elt, def);
942 return def; 945 return def;
943 } 946 }
@@ -955,6 +958,7 @@ store_in_keymap (keymap, idx, def)
955 keymap_end: 958 keymap_end:
956 /* We have scanned the entire keymap, and not found a binding for 959 /* We have scanned the entire keymap, and not found a binding for
957 IDX. Let's add one. */ 960 IDX. Let's add one. */
961 CHECK_IMPURE (insertion_point);
958 XSETCDR (insertion_point, 962 XSETCDR (insertion_point,
959 Fcons (Fcons (idx, def), XCDR (insertion_point))); 963 Fcons (Fcons (idx, def), XCDR (insertion_point)));
960 } 964 }
@@ -1217,7 +1221,7 @@ A number as value means KEY is "too long";
1217that is, characters or symbols in it except for the last one 1221that is, characters or symbols in it except for the last one
1218fail to be a valid sequence of prefix characters in KEYMAP. 1222fail to be a valid sequence of prefix characters in KEYMAP.
1219The number is how many characters at the front of KEY 1223The number is how many characters at the front of KEY
1220it takes to reach a non-prefix command. 1224it takes to reach a non-prefix key.
1221 1225
1222Normally, `lookup-key' ignores bindings for t, which act as default 1226Normally, `lookup-key' ignores bindings for t, which act as default
1223bindings, used when nothing else in the keymap applies; this makes it 1227bindings, used when nothing else in the keymap applies; this makes it
@@ -3836,9 +3840,9 @@ the same way. The "active" keymaps in each alist are used before
3836 3840
3837 3841
3838 DEFVAR_LISP ("function-key-map", &Vfunction_key_map, 3842 DEFVAR_LISP ("function-key-map", &Vfunction_key_map,
3839 doc: /* Keymap mapping ASCII function key sequences onto their preferred forms. 3843 doc: /* Keymap that translates key sequences to key sequences during input.
3840This allows Emacs to recognize function keys sent from ASCII 3844This is used mainly for mapping ASCII function key sequences into
3841terminals at any point in a key sequence. 3845real Emacs function key events (symbols).
3842 3846
3843The `read-key-sequence' function replaces any subsequence bound by 3847The `read-key-sequence' function replaces any subsequence bound by
3844`function-key-map' with its binding. More precisely, when the active 3848`function-key-map' with its binding. More precisely, when the active