comparison src/data.c @ 801:2b676dc88c66

[xemacs-hg @ 2002-04-01 03:58:02 by ben] bug fixes (e.g. ballooning on X windows) Makefile.in.in: Try to make the Makefile notice if its source Makefile.in.in is changed, and regenerate and run itself. Use a bigger default SHEAP_ADJUSTMENT on Cygwin; otherwise you can't compile under Mule if a Lisp file has changed. (can't run temacs) TODO.ben-mule-21-5: update. mule/mule-cmds.el: Hash the result of mswindows-get-language-environment-from-locale, since it's very expensive (and causes huge ballooning of memory under X Windows, since it's called from x-get-resource). cl-extra.el, code-files.el, files.el, simple.el, subr.el, x-faces.el: Create new string-equal-ignore-case, based on built-in compare-strings -- compare strings ignoring case without the need to generate garbage by calling downcase. Use it in equalp and elsewhere. alloc.c, bytecode.c, chartab.c, data.c, elhash.c, emacs.c, eval.c, event-Xt.c, event-unixoid.c, extents.c, file-coding.c, fileio.c, fns.c, glyphs.c, gutter.c, lisp-union.h, lisp.h, mule-charset.c, nt.c, process-unix.c, process.c, specifier.c, symbols.c, sysdep.c, sysdep.h, text.c, toolbar.c: Try to implement GC triggering based on percentage of total memory usage. Not currently activated (percentage set to 0) because not quite working. Add `memory-usage' primitive to return XEmacs' idea of its memory usage. Add primitive compare-strings, compatible with FSF 21.1 -- can compare any part of two strings, optionally ignoring case. Improve qxe() functions in text.c for text comparison. Use RETURN_NOT_REACHED to try to avoid warnings about unreachable code. Add volatile_make_int() to fix warning in unix_send_process().
author ben
date Mon, 01 Apr 2002 03:59:04 +0000
parents a5954632b187
children 6728e641994e
comparison
equal deleted inserted replaced
800:a5954632b187 801:2b676dc88c66
738 goto retry; 738 goto retry;
739 } 739 }
740 740
741 range_error: 741 range_error:
742 args_out_of_range (array, index_); 742 args_out_of_range (array, index_);
743 return Qnil; /* not reached */ 743 RETURN_NOT_REACHED (Qnil)
744 } 744 }
745 745
746 DEFUN ("aset", Faset, 3, 3, 0, /* 746 DEFUN ("aset", Faset, 3, 3, 0, /*
747 Store into the element of ARRAY at index INDEX the value NEWVAL. 747 Store into the element of ARRAY at index INDEX the value NEWVAL.
748 ARRAY may be a vector, bit vector, or string. INDEX starts at 0. 748 ARRAY may be a vector, bit vector, or string. INDEX starts at 0.
791 791
792 return newval; 792 return newval;
793 793
794 range_error: 794 range_error:
795 args_out_of_range (array, index_); 795 args_out_of_range (array, index_);
796 return Qnil; /* not reached */ 796 RETURN_NOT_REACHED (Qnil)
797 } 797 }
798 798
799 799
800 /**********************************************************************/ 800 /**********************************************************************/
801 /* Arithmetic functions */ 801 /* Arithmetic functions */
1263 } 1263 }
1264 return make_float (daccum); 1264 return make_float (daccum);
1265 1265
1266 divide_by_zero: 1266 divide_by_zero:
1267 Fsignal (Qarith_error, Qnil); 1267 Fsignal (Qarith_error, Qnil);
1268 return Qnil; /* not reached */ 1268 return Qnil; /* not (usually) reached */
1269 } 1269 }
1270 1270
1271 DEFUN ("max", Fmax, 1, MANY, 0, /* 1271 DEFUN ("max", Fmax, 1, MANY, 0, /*
1272 Return largest of all the arguments. 1272 Return largest of all the arguments.
1273 All arguments must be numbers, characters or markers. 1273 All arguments must be numbers, characters or markers.
1488 return make_int (ival); 1488 return make_int (ival);
1489 } 1489 }
1490 1490
1491 divide_by_zero: 1491 divide_by_zero:
1492 Fsignal (Qarith_error, Qnil); 1492 Fsignal (Qarith_error, Qnil);
1493 return Qnil; /* not reached */ 1493 return Qnil; /* not (usually) reached */
1494 } 1494 }
1495 1495
1496 DEFUN ("ash", Fash, 2, 2, 0, /* 1496 DEFUN ("ash", Fash, 2, 2, 0, /*
1497 Return VALUE with its bits shifted left by COUNT. 1497 Return VALUE with its bits shifted left by COUNT.
1498 If COUNT is negative, shifting is actually to the right. 1498 If COUNT is negative, shifting is actually to the right.
1911 if (EQ (symbol, Qkey_assoc)) return WEAK_LIST_KEY_ASSOC; 1911 if (EQ (symbol, Qkey_assoc)) return WEAK_LIST_KEY_ASSOC;
1912 if (EQ (symbol, Qvalue_assoc)) return WEAK_LIST_VALUE_ASSOC; 1912 if (EQ (symbol, Qvalue_assoc)) return WEAK_LIST_VALUE_ASSOC;
1913 if (EQ (symbol, Qfull_assoc)) return WEAK_LIST_FULL_ASSOC; 1913 if (EQ (symbol, Qfull_assoc)) return WEAK_LIST_FULL_ASSOC;
1914 1914
1915 invalid_constant ("Invalid weak list type", symbol); 1915 invalid_constant ("Invalid weak list type", symbol);
1916 return WEAK_LIST_SIMPLE; /* not reached */ 1916 RETURN_NOT_REACHED (WEAK_LIST_SIMPLE)
1917 } 1917 }
1918 1918
1919 static Lisp_Object 1919 static Lisp_Object
1920 encode_weak_list_type (enum weak_list_type type) 1920 encode_weak_list_type (enum weak_list_type type)
1921 { 1921 {
1928 case WEAK_LIST_FULL_ASSOC: return Qfull_assoc; 1928 case WEAK_LIST_FULL_ASSOC: return Qfull_assoc;
1929 default: 1929 default:
1930 abort (); 1930 abort ();
1931 } 1931 }
1932 1932
1933 return Qnil; /* not reached */ 1933 return Qnil; /* not (usually) reached */
1934 } 1934 }
1935 1935
1936 DEFUN ("weak-list-p", Fweak_list_p, 1, 1, 0, /* 1936 DEFUN ("weak-list-p", Fweak_list_p, 1, 1, 0, /*
1937 Return non-nil if OBJECT is a weak list. 1937 Return non-nil if OBJECT is a weak list.
1938 */ 1938 */