# HG changeset patch # User Gerd Moellmann # Date 968676673 0 # Node ID 3898245f639a3a2cc6eaf80746387f7a26587656 # Parent ee6f5d0dd0e7060fa1998fe53ee027ef731dcccf (concat, Fsubstring, internal_equal, Fnconc): Avoid some compiler warnings. diff -r ee6f5d0dd0e7 -r 3898245f639a src/fns.c --- a/src/fns.c Mon Sep 11 10:48:34 2000 +0000 +++ b/src/fns.c Mon Sep 11 12:51:13 2000 +0000 @@ -554,7 +554,7 @@ register Lisp_Object tail; register Lisp_Object this; int toindex; - int toindex_byte; + int toindex_byte = 0; register int result_len; register int result_len_byte; register int argnum; @@ -566,10 +566,12 @@ string can't be decided until we finish the whole concatination. So, we record strings that have text properties to be copied here, and copy the text properties after the concatination. */ - struct textprop_rec *textprops; + struct textprop_rec *textprops = NULL; /* Number of elments in textprops. */ int num_textprops = 0; + tail = Qnil; + /* In append, the last arg isn't treated like the others */ if (last_special && nargs > 0) { @@ -681,7 +683,7 @@ for (argnum = 0; argnum < nargs; argnum++) { Lisp_Object thislen; - int thisleni; + int thisleni = 0; register unsigned int thisindex = 0; register unsigned int thisindex_byte = 0; @@ -1173,9 +1175,9 @@ { Lisp_Object res; int size; - int size_byte; + int size_byte = 0; int from_char, to_char; - int from_byte, to_byte; + int from_byte = 0, to_byte = 0; if (! (STRINGP (string) || VECTORP (string))) wrong_type_argument (Qarrayp, string); @@ -2044,7 +2046,13 @@ STRING_BYTES (XSTRING (o1)))) return 0; return 1; + + case Lisp_Int: + case Lisp_Symbol: + case Lisp_Type_Limit: + break; } + return 0; } @@ -2577,7 +2585,7 @@ register int argnum; register Lisp_Object tail, tem, val; - val = Qnil; + val = tail = Qnil; for (argnum = 0; argnum < nargs; argnum++) { @@ -3050,7 +3058,9 @@ register Lisp_Object tem; CHECK_SYMBOL (feature, 0); tem = Fmemq (feature, Vfeatures); + LOADHIST_ATTACH (Fcons (Qrequire, feature)); + if (NILP (tem)) { int count = specpdl_ptr - specpdl;