Mercurial > emacs
view admin/notes/exit-value @ 83262:92c8be21e2c3
Merged from miles@gnu.org--gnu-2005 (patch 31-33, 129-141)
Patches applied:
* miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-129
Update from CVS
* miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-130
Update from CVS
* miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-131
Update from CVS
* miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-132
Update from CVS
* miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-133
Merge from gnus--rel--5.10
* miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-134
Update from CVS
* miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-135
Update from CVS
* miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-136
Update from CVS
* miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-137
Update from CVS
* miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-138
Update from CVS
* miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-139
Merge from gnus--rel--5.10
* miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-140
Update from CVS
* miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-141
Update from CVS
* miles@gnu.org--gnu-2005/gnus--rel--5.10--patch-31
Merge from emacs--cvs-trunk--0
* miles@gnu.org--gnu-2005/gnus--rel--5.10--patch-32
Merge from emacs--cvs-trunk--0
* miles@gnu.org--gnu-2005/gnus--rel--5.10--patch-33
Update from CVS
git-archimport-id: lorentey@elte.hu--2004/emacs--multi-tty--0--patch-302
| author | Karoly Lorentey <lorentey@elte.hu> |
|---|---|
| date | Mon, 28 Feb 2005 15:15:44 +0000 |
| parents | dc9bd6dd0d8d |
| children |
line wrap: on
line source
ttn 2004-05-09 The exit value of a program returning to the shell on unixoid systems is typically 0 for success, and non-0 (such as 1) for failure. For vms it is odd (1,3,5...) for success, even (0,2,4...) for failure. This holds from the point of view of the "shell" (in quotes because vms has a different dispatch model that is not explained further here). From the point of view of the program, nowadays stdlib.h on both type of systems provides macros `EXIT_SUCCESS' and `EXIT_FAILURE' that should DTRT. NB: The numerical values of these macros DO NOT need to fulfill the the exit value requirements outlined in the first paragraph! That is the job of the `exit' function. Thus, this kind of construct shows misunderstanding: #ifdef VMS exit (1); #else exit (0); #endif Values aside from EXIT_SUCCESS and EXIT_FAILURE are tricky. ttn 2004-05-12 Values aside from EXIT_SUCCESS and EXIT_FAILURE can be used to indicate finer gradations of failure. If this is the only information available to the caller, clamping such values to EXIT_FAILURE loses information. If there are other ways to indicate the problem to the caller (such as a message to stderr) it may be ok to clamp. In all cases, it is the relationship between the program and its caller that must be examined. [Insert ZAMM quote here.]
