annotate nt/paths.h @ 5303:4c4085177ca5

Fix some bugs in fns.c, discovered in passing while doing other work. 2010-11-14 Aidan Kehoe <kehoea@parhasard.net> * fns.c (Fnreverse): Check that non-list sequences are writable from Lisp before modifying them. (There's an argument that we should do this for list sequences too, but for the moment other code (e.g. #'setcar) doesn't.) (mapcarX): Initialise lisp_vals_staging, lisp_vals_type explicitly, for the sake of compile warnings. Check if lisp_vals_staging is non-NULL when deciding whether to replace a string's range. (Fsome): Cross-reference to #'find-if in the doc string for this function. (Freduce): GCPRO accum in this function, when a key argument is specicified it can be silently garbage-collected. When deciding whether to iterate across a string, check whether the cursor exceeds the byte len; while iterating, increment an integer counter. Don't ABORT() if check_sequence_range() returns when handed a suspicious sequence; it is legal to supply the length of SEQUENCE as the :end keyword value, and this will provoke our suspicions, legitimately enough. (Problems with this function revealed by Paul Dietz' ANSI test suite, thank you Paul Dietz.) (Freplace): Check list sequence lengths using the arguments, not the conses we're currently looking at, thank you Paul Dietz.
author Aidan Kehoe <kehoea@parhasard.net>
date Sun, 14 Nov 2010 14:54:09 +0000
parents 4be1180a9e89
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
100
4be1180a9e89 Import from CVS: tag r20-1b2
cvs
parents:
diff changeset
1 /* Hey Emacs, this is -*- C -*- code! */
4be1180a9e89 Import from CVS: tag r20-1b2
cvs
parents:
diff changeset
2
4be1180a9e89 Import from CVS: tag r20-1b2
cvs
parents:
diff changeset
3 /* Synched up with: Not synched with FSF. */
4be1180a9e89 Import from CVS: tag r20-1b2
cvs
parents:
diff changeset
4
4be1180a9e89 Import from CVS: tag r20-1b2
cvs
parents:
diff changeset
5 /* Think twice before editing this file. Generated automatically by configure.
4be1180a9e89 Import from CVS: tag r20-1b2
cvs
parents:
diff changeset
6
4be1180a9e89 Import from CVS: tag r20-1b2
cvs
parents:
diff changeset
7 The file startup.el guesses at reasonable values for load-path, exec-path,
4be1180a9e89 Import from CVS: tag r20-1b2
cvs
parents:
diff changeset
8 and lock-directory. This means that if you move emacs and its associated
4be1180a9e89 Import from CVS: tag r20-1b2
cvs
parents:
diff changeset
9 sub-tree to a different place in the filesystem, or to a different machine,
4be1180a9e89 Import from CVS: tag r20-1b2
cvs
parents:
diff changeset
10 you won't have to do anything for it to work.
4be1180a9e89 Import from CVS: tag r20-1b2
cvs
parents:
diff changeset
11
4be1180a9e89 Import from CVS: tag r20-1b2
cvs
parents:
diff changeset
12 If you define the paths in this file then they will take precedence over
4be1180a9e89 Import from CVS: tag r20-1b2
cvs
parents:
diff changeset
13 any value generated by the heuristic in startup.el. The hardcoded paths
4be1180a9e89 Import from CVS: tag r20-1b2
cvs
parents:
diff changeset
14 will be checked to see if they are valid, in which case they will be used.
4be1180a9e89 Import from CVS: tag r20-1b2
cvs
parents:
diff changeset
15 Otherwise the editor will attempt to make its normal guess.
4be1180a9e89 Import from CVS: tag r20-1b2
cvs
parents:
diff changeset
16
4be1180a9e89 Import from CVS: tag r20-1b2
cvs
parents:
diff changeset
17 See the NEWS file for a description of the heuristic used to locate the lisp
4be1180a9e89 Import from CVS: tag r20-1b2
cvs
parents:
diff changeset
18 and exec directories at startup time. If you are looking at this file
4be1180a9e89 Import from CVS: tag r20-1b2
cvs
parents:
diff changeset
19 because you are having trouble, then you would be much better off arranging
4be1180a9e89 Import from CVS: tag r20-1b2
cvs
parents:
diff changeset
20 for those heuristics to succeed than defining the paths in this file.
4be1180a9e89 Import from CVS: tag r20-1b2
cvs
parents:
diff changeset
21
4be1180a9e89 Import from CVS: tag r20-1b2
cvs
parents:
diff changeset
22 ** Let me say that again. If you're editing this file, you're making
4be1180a9e89 Import from CVS: tag r20-1b2
cvs
parents:
diff changeset
23 ** a mistake. Re-read the section on installation in ../etc/NEWS.
4be1180a9e89 Import from CVS: tag r20-1b2
cvs
parents:
diff changeset
24
4be1180a9e89 Import from CVS: tag r20-1b2
cvs
parents:
diff changeset
25 If it defines anything, this file should define some subset of the following:
4be1180a9e89 Import from CVS: tag r20-1b2
cvs
parents:
diff changeset
26
4be1180a9e89 Import from CVS: tag r20-1b2
cvs
parents:
diff changeset
27 PATH_PREFIX The default value of `prefix-directory'. This is the
4be1180a9e89 Import from CVS: tag r20-1b2
cvs
parents:
diff changeset
28 default root for everything.
4be1180a9e89 Import from CVS: tag r20-1b2
cvs
parents:
diff changeset
29
4be1180a9e89 Import from CVS: tag r20-1b2
cvs
parents:
diff changeset
30 PATH_LOADSEARCH The default value of `load-path'.
4be1180a9e89 Import from CVS: tag r20-1b2
cvs
parents:
diff changeset
31
4be1180a9e89 Import from CVS: tag r20-1b2
cvs
parents:
diff changeset
32 PATH_EXEC The default value of `exec-directory' and `exec-path'.
4be1180a9e89 Import from CVS: tag r20-1b2
cvs
parents:
diff changeset
33 (exec-path also contains the value of whatever is in
4be1180a9e89 Import from CVS: tag r20-1b2
cvs
parents:
diff changeset
34 the PATH environment variable.)
4be1180a9e89 Import from CVS: tag r20-1b2
cvs
parents:
diff changeset
35
4be1180a9e89 Import from CVS: tag r20-1b2
cvs
parents:
diff changeset
36 PATH_DATA The default value of `data-directory'. This
4be1180a9e89 Import from CVS: tag r20-1b2
cvs
parents:
diff changeset
37 is where architecture-independent files are
4be1180a9e89 Import from CVS: tag r20-1b2
cvs
parents:
diff changeset
38 searched for.
4be1180a9e89 Import from CVS: tag r20-1b2
cvs
parents:
diff changeset
39
4be1180a9e89 Import from CVS: tag r20-1b2
cvs
parents:
diff changeset
40 PATH_LOCK The name of the directory that contains lock files
4be1180a9e89 Import from CVS: tag r20-1b2
cvs
parents:
diff changeset
41 with which we record what files are being modified in
4be1180a9e89 Import from CVS: tag r20-1b2
cvs
parents:
diff changeset
42 Emacs. This directory should be writable by everyone.
4be1180a9e89 Import from CVS: tag r20-1b2
cvs
parents:
diff changeset
43 If this is specified, the string must end with a slash!
4be1180a9e89 Import from CVS: tag r20-1b2
cvs
parents:
diff changeset
44
4be1180a9e89 Import from CVS: tag r20-1b2
cvs
parents:
diff changeset
45 PATH_SUPERLOCK The name of the file !!!SuperLock!!! in the lock
4be1180a9e89 Import from CVS: tag r20-1b2
cvs
parents:
diff changeset
46 directory. You probably should let this default...
4be1180a9e89 Import from CVS: tag r20-1b2
cvs
parents:
diff changeset
47
4be1180a9e89 Import from CVS: tag r20-1b2
cvs
parents:
diff changeset
48 PATH_INFO The default value of `Info-directory-list'.
4be1180a9e89 Import from CVS: tag r20-1b2
cvs
parents:
diff changeset
49 This is where info files are searched for. */