comparison src/bytecode.c @ 5374:d967d96ca043

Conditionalise the old-* functions and byte codes at compile time. src/ChangeLog addition: 2011-03-15 Aidan Kehoe <kehoea@parhasard.net> * config.h.in (SUPPORT_CONFOUNDING_FUNCTIONS): New #define, equivalent NEED_TO_HANDLE_21_4_CODE by default, describing whether this XEmacs should support the old-eq, old-equal and related functions and byte codes. * bytecode.c (UNUSED): Only interpret old-eq, old-equal, old-memq if SUPPORT_CONFOUNDING_FUNCTIONS is defined. * data.c: Move Fold_eq to fns.c with the rest of the Fold_* functions. * fns.c: * fns.c (Fmemq): * fns.c (memq_no_quit): * fns.c (assoc_no_quit): * fns.c (Frassq): * fns.c (Fequal): * fns.c (Fold_equal): * fns.c (syms_of_fns): Group old-eq, old-equal, old-memq etc together, surround them with #ifdef SUPPORT_CONFOUNDING_FUNCTIONS. lisp/ChangeLog addition: 2011-03-15 Aidan Kehoe <kehoea@parhasard.net> * bytecomp.el: Don't generate the old-eq, old-memq, old-equal bytecodes any more, but keep the information about them around for the sake of the disassembler. man/ChangeLog addition: 2011-03-15 Aidan Kehoe <kehoea@parhasard.net> * lispref/objects.texi (Character Type): * lispref/objects.texi (Equality Predicates): No longer document `old-eq', `old-equal', they haven't been used in years. tests/ChangeLog addition: 2011-03-17 Aidan Kehoe <kehoea@parhasard.net> * automated/lisp-tests.el: Only test the various old-* function if old-eq is bound and a subr.
author Aidan Kehoe <kehoea@parhasard.net>
date Thu, 17 Mar 2011 20:13:00 +0000
parents 4c4b96b13f70
children ac37a5f7e5be
comparison
equal deleted inserted replaced
5372:6c3a695f54f5 5374:d967d96ca043
1690 /* pop binding of standard-output */ 1690 /* pop binding of standard-output */
1691 unbind_to (specpdl_depth() - 1); 1691 unbind_to (specpdl_depth() - 1);
1692 break; 1692 break;
1693 } 1693 }
1694 1694
1695 #ifdef SUPPORT_CONFOUNDING_FUNCTIONS
1696
1695 case Bold_eq: 1697 case Bold_eq:
1696 { 1698 {
1697 Lisp_Object arg = POP; 1699 Lisp_Object arg = POP;
1698 TOP_LVALUE = HACKEQ_UNSAFE (TOP, arg) ? Qt : Qnil; 1700 TOP_LVALUE = HACKEQ_UNSAFE (TOP, arg) ? Qt : Qnil;
1699 break; 1701 break;
1724 { 1726 {
1725 Lisp_Object arg = POP; 1727 Lisp_Object arg = POP;
1726 TOP_LVALUE = Fold_assq (TOP, arg); 1728 TOP_LVALUE = Fold_assq (TOP, arg);
1727 break; 1729 break;
1728 } 1730 }
1731
1732 #endif
1729 1733
1730 case Bbind_multiple_value_limits: 1734 case Bbind_multiple_value_limits:
1731 { 1735 {
1732 Lisp_Object upper = POP, first = TOP, speccount; 1736 Lisp_Object upper = POP, first = TOP, speccount;
1733 1737