Mercurial > emacs
comparison src/lisp.h @ 18613:614b916ff5bf
Fix bugs with inappropriate mixing of Lisp_Object with int.
author | Richard M. Stallman <rms@gnu.org> |
---|---|
date | Fri, 04 Jul 1997 20:44:52 +0000 |
parents | 06ce39d8e93e |
children | a0663e413622 |
comparison
equal
deleted
inserted
replaced
18612:88efccff8970 | 18613:614b916ff5bf |
---|---|
606 | 606 |
607 /* Almost equivalent to Faref (CT, IDX) with optimization for ASCII | 607 /* Almost equivalent to Faref (CT, IDX) with optimization for ASCII |
608 and 8-bit Europeans characters. For these characters, do not check | 608 and 8-bit Europeans characters. For these characters, do not check |
609 validity of CT. Do not follow parent. */ | 609 validity of CT. Do not follow parent. */ |
610 #define CHAR_TABLE_REF(CT, IDX) \ | 610 #define CHAR_TABLE_REF(CT, IDX) \ |
611 (XFASTINT (IDX) < CHAR_TABLE_SINGLE_BYTE_SLOTS \ | 611 ((IDX) < CHAR_TABLE_SINGLE_BYTE_SLOTS \ |
612 ? (!NILP (XCHAR_TABLE (CT)->contents[XFASTINT (IDX)])\ | 612 ? (!NILP (XCHAR_TABLE (CT)->contents[IDX]) \ |
613 ? XCHAR_TABLE (CT)->contents[XFASTINT (IDX)] \ | 613 ? XCHAR_TABLE (CT)->contents[IDX] \ |
614 : XCHAR_TABLE (CT)->defalt) \ | 614 : XCHAR_TABLE (CT)->defalt) \ |
615 : Faref (CT, IDX)) | 615 : Faref (CT, make_number (IDX))) |
616 | 616 |
617 /* Equivalent to Faset (CT, IDX, VAL) with optimization for ASCII and | 617 /* Equivalent to Faset (CT, IDX, VAL) with optimization for ASCII and |
618 8-bit Europeans characters. Do not check validity of CT. */ | 618 8-bit Europeans characters. Do not check validity of CT. */ |
619 #define CHAR_TABLE_SET(CT, IDX, VAL) \ | 619 #define CHAR_TABLE_SET(CT, IDX, VAL) \ |
620 do { \ | 620 do { \ |
1312 /* Nonzero if ought to quit now. */ | 1312 /* Nonzero if ought to quit now. */ |
1313 | 1313 |
1314 #define QUITP (!NILP (Vquit_flag) && NILP (Vinhibit_quit)) | 1314 #define QUITP (!NILP (Vquit_flag) && NILP (Vinhibit_quit)) |
1315 | 1315 |
1316 /* Variables used locally in the following case handling macros. */ | 1316 /* Variables used locally in the following case handling macros. */ |
1317 extern Lisp_Object case_temp1, case_temp2; | 1317 extern int case_temp1; |
1318 extern Lisp_Object case_temp2; | |
1318 | 1319 |
1319 /* Current buffer's map from characters to lower-case characters. */ | 1320 /* Current buffer's map from characters to lower-case characters. */ |
1320 | 1321 |
1321 #define DOWNCASE_TABLE current_buffer->downcase_table | 1322 #define DOWNCASE_TABLE current_buffer->downcase_table |
1322 | 1323 |
1482 extern Lisp_Object indirect_function (), Findirect_function (); | 1483 extern Lisp_Object indirect_function (), Findirect_function (); |
1483 extern Lisp_Object Ffset (), Fsetplist (); | 1484 extern Lisp_Object Ffset (), Fsetplist (); |
1484 extern Lisp_Object Fsymbol_value (), find_symbol_value (), Fset (); | 1485 extern Lisp_Object Fsymbol_value (), find_symbol_value (), Fset (); |
1485 extern Lisp_Object Fdefault_value (), Fset_default (), Fdefault_boundp (); | 1486 extern Lisp_Object Fdefault_value (), Fset_default (), Fdefault_boundp (); |
1486 extern Lisp_Object Fmake_local_variable (); | 1487 extern Lisp_Object Fmake_local_variable (); |
1488 extern Lisp_Object Flocal_variable_if_set_p (); | |
1487 | 1489 |
1488 extern Lisp_Object Faref (), Faset (); | 1490 extern Lisp_Object Faref (), Faset (); |
1489 | 1491 |
1490 extern Lisp_Object Fstring_to_number (), Fnumber_to_string (); | 1492 extern Lisp_Object Fstring_to_number (), Fnumber_to_string (); |
1491 extern Lisp_Object Feqlsign (), Fgtr (), Flss (), Fgeq (), Fleq (); | 1493 extern Lisp_Object Feqlsign (), Fgtr (), Flss (), Fgeq (), Fleq (); |
1515 extern Lisp_Object Fend_of_line (), Fforward_char (), Fforward_line (); | 1517 extern Lisp_Object Fend_of_line (), Fforward_char (), Fforward_line (); |
1516 | 1518 |
1517 /* Defined in coding.c */ | 1519 /* Defined in coding.c */ |
1518 extern Lisp_Object Fcoding_system_p (), Fcheck_coding_system (); | 1520 extern Lisp_Object Fcoding_system_p (), Fcheck_coding_system (); |
1519 extern Lisp_Object Fread_coding_system (), Fread_non_nil_coding_system (); | 1521 extern Lisp_Object Fread_coding_system (), Fread_non_nil_coding_system (); |
1522 extern Lisp_Object Ffind_coding_system (); | |
1520 | 1523 |
1521 /* Defined in syntax.c */ | 1524 /* Defined in syntax.c */ |
1522 extern Lisp_Object Fforward_word (); | 1525 extern Lisp_Object Fforward_word (); |
1523 | 1526 |
1524 /* Defined in fns.c */ | 1527 /* Defined in fns.c */ |
1537 extern Lisp_Object concat2 (), concat3 (), nconc2 (); | 1540 extern Lisp_Object concat2 (), concat3 (), nconc2 (); |
1538 extern Lisp_Object assq_no_quit (); | 1541 extern Lisp_Object assq_no_quit (); |
1539 extern Lisp_Object Fcopy_alist (); | 1542 extern Lisp_Object Fcopy_alist (); |
1540 extern Lisp_Object Fplist_get (); | 1543 extern Lisp_Object Fplist_get (); |
1541 extern Lisp_Object Fset_char_table_parent (); | 1544 extern Lisp_Object Fset_char_table_parent (); |
1545 extern Lisp_Object Fchar_table_extra_slot (); | |
1546 extern Lisp_Object Frassoc (); | |
1542 | 1547 |
1543 /* Defined in insdel.c */ | 1548 /* Defined in insdel.c */ |
1544 extern void move_gap (); | 1549 extern void move_gap (); |
1545 extern void make_gap (); | 1550 extern void make_gap (); |
1546 extern void insert (); | 1551 extern void insert (); |
1673 extern Lisp_Object Fstring_equal (), Fstring_lessp (), Fbuffer_substring_lessp (); | 1678 extern Lisp_Object Fstring_equal (), Fstring_lessp (), Fbuffer_substring_lessp (); |
1674 extern Lisp_Object save_excursion_save (), save_restriction_save (); | 1679 extern Lisp_Object save_excursion_save (), save_restriction_save (); |
1675 extern Lisp_Object save_excursion_restore (), save_restriction_restore (); | 1680 extern Lisp_Object save_excursion_restore (), save_restriction_restore (); |
1676 extern Lisp_Object Fchar_to_string (); | 1681 extern Lisp_Object Fchar_to_string (); |
1677 extern Lisp_Object Fdelete_region (), Fnarrow_to_region (), Fwiden (); | 1682 extern Lisp_Object Fdelete_region (), Fnarrow_to_region (), Fwiden (); |
1683 extern Lisp_Object Fuser_login_name (), Fsystem_name (); | |
1678 | 1684 |
1679 /* defined in buffer.c */ | 1685 /* defined in buffer.c */ |
1680 extern Lisp_Object Foverlay_start (), Foverlay_end (); | 1686 extern Lisp_Object Foverlay_start (), Foverlay_end (); |
1681 extern void adjust_overlays_for_insert (); | 1687 extern void adjust_overlays_for_insert (); |
1682 extern void adjust_overlays_for_delete (); | 1688 extern void adjust_overlays_for_delete (); |
1693 extern Lisp_Object Fbuffer_disable_undo (), Fbuffer_enable_undo (); | 1699 extern Lisp_Object Fbuffer_disable_undo (), Fbuffer_enable_undo (); |
1694 extern Lisp_Object Ferase_buffer (); | 1700 extern Lisp_Object Ferase_buffer (); |
1695 extern Lisp_Object Qoverlayp; | 1701 extern Lisp_Object Qoverlayp; |
1696 extern Lisp_Object get_truename_buffer (); | 1702 extern Lisp_Object get_truename_buffer (); |
1697 extern struct buffer *all_buffers; | 1703 extern struct buffer *all_buffers; |
1704 extern Lisp_Object Fprevious_overlay_change (); | |
1698 | 1705 |
1699 /* defined in marker.c */ | 1706 /* defined in marker.c */ |
1700 | 1707 |
1701 extern Lisp_Object Fmarker_position (), Fmarker_buffer (); | 1708 extern Lisp_Object Fmarker_position (), Fmarker_buffer (); |
1702 extern Lisp_Object Fcopy_marker (); | 1709 extern Lisp_Object Fcopy_marker (); |
1717 extern Lisp_Object expand_and_dir_to_file (); | 1724 extern Lisp_Object expand_and_dir_to_file (); |
1718 extern Lisp_Object Ffile_accessible_directory_p (); | 1725 extern Lisp_Object Ffile_accessible_directory_p (); |
1719 extern Lisp_Object Funhandled_file_name_directory (); | 1726 extern Lisp_Object Funhandled_file_name_directory (); |
1720 extern Lisp_Object Ffile_directory_p (); | 1727 extern Lisp_Object Ffile_directory_p (); |
1721 extern Lisp_Object Fwrite_region (); | 1728 extern Lisp_Object Fwrite_region (); |
1729 extern Lisp_Object Ffile_readable_p (), Ffile_executable_p (); | |
1722 | 1730 |
1723 /* Defined in abbrev.c */ | 1731 /* Defined in abbrev.c */ |
1724 | 1732 |
1725 extern Lisp_Object Vfundamental_mode_abbrev_table; | 1733 extern Lisp_Object Vfundamental_mode_abbrev_table; |
1726 | 1734 |
1786 extern Lisp_Object get_keyelt (), get_keymap (), get_keymap_1 (); | 1794 extern Lisp_Object get_keyelt (), get_keymap (), get_keymap_1 (); |
1787 extern void describe_map_tree (); | 1795 extern void describe_map_tree (); |
1788 | 1796 |
1789 /* defined in indent.c */ | 1797 /* defined in indent.c */ |
1790 extern Lisp_Object Fvertical_motion (), Findent_to (), Fcurrent_column (); | 1798 extern Lisp_Object Fvertical_motion (), Findent_to (), Fcurrent_column (); |
1799 extern Lisp_Object Fmove_to_column (); | |
1791 | 1800 |
1792 /* defined in window.c */ | 1801 /* defined in window.c */ |
1793 extern Lisp_Object Qwindowp, Qwindow_live_p; | 1802 extern Lisp_Object Qwindowp, Qwindow_live_p; |
1794 extern Lisp_Object Fselected_window (); | 1803 extern Lisp_Object Fselected_window (); |
1795 extern Lisp_Object Fget_buffer_window (); | 1804 extern Lisp_Object Fget_buffer_window (); |
1836 extern Lisp_Object Fset_frame_width (); | 1845 extern Lisp_Object Fset_frame_width (); |
1837 extern Lisp_Object Fset_frame_size (); | 1846 extern Lisp_Object Fset_frame_size (); |
1838 extern Lisp_Object Fset_frame_position (); | 1847 extern Lisp_Object Fset_frame_position (); |
1839 extern Lisp_Object Fraise_frame (); | 1848 extern Lisp_Object Fraise_frame (); |
1840 extern Lisp_Object Fredirect_frame_focus (); | 1849 extern Lisp_Object Fredirect_frame_focus (); |
1850 extern Lisp_Object frame_buffer_list (); | |
1841 | 1851 |
1842 /* defined in emacs.c */ | 1852 /* defined in emacs.c */ |
1843 extern Lisp_Object decode_env_path (); | 1853 extern Lisp_Object decode_env_path (); |
1844 extern Lisp_Object Vinvocation_name, Vinvocation_directory; | 1854 extern Lisp_Object Vinvocation_name, Vinvocation_directory; |
1845 extern Lisp_Object Vinstallation_directory; | 1855 extern Lisp_Object Vinstallation_directory; |
1889 extern Lisp_Object Fnext_single_property_change (); | 1899 extern Lisp_Object Fnext_single_property_change (); |
1890 extern Lisp_Object Fprevious_single_property_change (); | 1900 extern Lisp_Object Fprevious_single_property_change (); |
1891 extern Lisp_Object Fget_text_property (), Fput_text_property (); | 1901 extern Lisp_Object Fget_text_property (), Fput_text_property (); |
1892 extern Lisp_Object Fset_text_properties (); | 1902 extern Lisp_Object Fset_text_properties (); |
1893 extern Lisp_Object Ftext_property_not_all (); | 1903 extern Lisp_Object Ftext_property_not_all (); |
1904 extern Lisp_Object Fprevious_char_property_change (); | |
1905 extern Lisp_Object Fnext_char_property_change (); | |
1894 | 1906 |
1895 /* defined in intervals.c */ | 1907 /* defined in intervals.c */ |
1896 extern Lisp_Object get_local_map (); | 1908 extern Lisp_Object get_local_map (); |
1897 | 1909 |
1898 /* defined in xmenu.c */ | 1910 /* defined in xmenu.c */ |