]> code.delx.au - gnu-emacs/blobdiff - src/macros.c
* menu.c [HAVE_NTGUI]: Declare current_popup_menu.
[gnu-emacs] / src / macros.c
index 8b17c9fb2611228d3be596fea9622fbeb32de994..f070df0ad346baad7e54383424346b90c2e08a6a 100644 (file)
@@ -1,12 +1,13 @@
 /* Keyboard macros.
-   Copyright (C) 1985, 1986, 1993, 2000, 2001 Free Software Foundation, Inc.
+   Copyright (C) 1985, 1986, 1993, 2000, 2001, 2002, 2003, 2004,
+                 2005, 2006, 2007, 2008, 2009 Free Software Foundation, Inc.
 
 This file is part of GNU Emacs.
 
-GNU Emacs is free software; you can redistribute it and/or modify
+GNU Emacs is free software: you can redistribute it and/or modify
 it under the terms of the GNU General Public License as published by
-the Free Software Foundation; either version 2, or (at your option)
-any later version.
+the Free Software Foundation, either version 3 of the License, or
+(at your option) any later version.
 
 GNU Emacs is distributed in the hope that it will be useful,
 but WITHOUT ANY WARRANTY; without even the implied warranty of
@@ -14,12 +15,11 @@ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License
-along with GNU Emacs; see the file COPYING.  If not, write to
-the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-Boston, MA 02111-1307, USA.  */
+along with GNU Emacs.  If not, see <http://www.gnu.org/licenses/>.  */
 
 
 #include <config.h>
+#include <setjmp.h>
 #include "lisp.h"
 #include "macros.h"
 #include "commands.h"
@@ -96,10 +96,7 @@ macro before appending to it. */)
       int cvt;
 
       /* Check the type of last-kbd-macro in case Lisp code changed it.  */
-      if (!STRINGP (current_kboard->Vlast_kbd_macro)
-         && !VECTORP (current_kboard->Vlast_kbd_macro))
-       current_kboard->Vlast_kbd_macro
-         = wrong_type_argument (Qarrayp, current_kboard->Vlast_kbd_macro);
+      CHECK_VECTOR_OR_STRING (current_kboard->Vlast_kbd_macro);
 
       len = XINT (Flength (current_kboard->Vlast_kbd_macro));
 
@@ -379,9 +376,9 @@ init_macros ()
 void
 syms_of_macros ()
 {
-  Qexecute_kbd_macro = intern ("execute-kbd-macro");
+  Qexecute_kbd_macro = intern_c_string ("execute-kbd-macro");
   staticpro (&Qexecute_kbd_macro);
-  Qkbd_macro_termination_hook = intern ("kbd-macro-termination-hook");
+  Qkbd_macro_termination_hook = intern_c_string ("kbd-macro-termination-hook");
   staticpro (&Qkbd_macro_termination_hook);
 
   defsubr (&Sstart_kbd_macro);