annotate src/matherr.c @ 5307:4c8a2e4e0717

[project @ 2005-04-26 19:24:27 by jwe]
author jwe
date Tue, 26 Apr 2005 19:24:47 +0000
parents 17e2f90e0d3b
children 93c65f2a5668
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
3067
aa76250a5b87 [project @ 1997-07-02 21:54:12 by jwe]
jwe
parents:
diff changeset
1 /*
aa76250a5b87 [project @ 1997-07-02 21:54:12 by jwe]
jwe
parents:
diff changeset
2
aa76250a5b87 [project @ 1997-07-02 21:54:12 by jwe]
jwe
parents:
diff changeset
3 Copyright (C) 1997 John W. Eaton
aa76250a5b87 [project @ 1997-07-02 21:54:12 by jwe]
jwe
parents:
diff changeset
4
aa76250a5b87 [project @ 1997-07-02 21:54:12 by jwe]
jwe
parents:
diff changeset
5 This file is part of Octave.
aa76250a5b87 [project @ 1997-07-02 21:54:12 by jwe]
jwe
parents:
diff changeset
6
aa76250a5b87 [project @ 1997-07-02 21:54:12 by jwe]
jwe
parents:
diff changeset
7 Octave is free software; you can redistribute it and/or modify it
aa76250a5b87 [project @ 1997-07-02 21:54:12 by jwe]
jwe
parents:
diff changeset
8 under the terms of the GNU General Public License as published by the
aa76250a5b87 [project @ 1997-07-02 21:54:12 by jwe]
jwe
parents:
diff changeset
9 Free Software Foundation; either version 2, or (at your option) any
aa76250a5b87 [project @ 1997-07-02 21:54:12 by jwe]
jwe
parents:
diff changeset
10 later version.
aa76250a5b87 [project @ 1997-07-02 21:54:12 by jwe]
jwe
parents:
diff changeset
11
aa76250a5b87 [project @ 1997-07-02 21:54:12 by jwe]
jwe
parents:
diff changeset
12 Octave is distributed in the hope that it will be useful, but WITHOUT
aa76250a5b87 [project @ 1997-07-02 21:54:12 by jwe]
jwe
parents:
diff changeset
13 ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
aa76250a5b87 [project @ 1997-07-02 21:54:12 by jwe]
jwe
parents:
diff changeset
14 FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
aa76250a5b87 [project @ 1997-07-02 21:54:12 by jwe]
jwe
parents:
diff changeset
15 for more details.
aa76250a5b87 [project @ 1997-07-02 21:54:12 by jwe]
jwe
parents:
diff changeset
16
aa76250a5b87 [project @ 1997-07-02 21:54:12 by jwe]
jwe
parents:
diff changeset
17 You should have received a copy of the GNU General Public License
aa76250a5b87 [project @ 1997-07-02 21:54:12 by jwe]
jwe
parents:
diff changeset
18 along with Octave; see the file COPYING. If not, write to the Free
5307
4c8a2e4e0717 [project @ 2005-04-26 19:24:27 by jwe]
jwe
parents: 3068
diff changeset
19 Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
4c8a2e4e0717 [project @ 2005-04-26 19:24:27 by jwe]
jwe
parents: 3068
diff changeset
20 02110-1301, USA.
3067
aa76250a5b87 [project @ 1997-07-02 21:54:12 by jwe]
jwe
parents:
diff changeset
21
aa76250a5b87 [project @ 1997-07-02 21:54:12 by jwe]
jwe
parents:
diff changeset
22 */
aa76250a5b87 [project @ 1997-07-02 21:54:12 by jwe]
jwe
parents:
diff changeset
23
aa76250a5b87 [project @ 1997-07-02 21:54:12 by jwe]
jwe
parents:
diff changeset
24 #ifdef HAVE_CONFIG_H
aa76250a5b87 [project @ 1997-07-02 21:54:12 by jwe]
jwe
parents:
diff changeset
25 #include <config.h>
aa76250a5b87 [project @ 1997-07-02 21:54:12 by jwe]
jwe
parents:
diff changeset
26 #endif
aa76250a5b87 [project @ 1997-07-02 21:54:12 by jwe]
jwe
parents:
diff changeset
27
3068
17e2f90e0d3b [project @ 1997-07-08 02:17:36 by jwe]
jwe
parents: 3067
diff changeset
28 #if defined (EXCEPTION_IN_MATH)
3067
aa76250a5b87 [project @ 1997-07-02 21:54:12 by jwe]
jwe
parents:
diff changeset
29
3068
17e2f90e0d3b [project @ 1997-07-08 02:17:36 by jwe]
jwe
parents: 3067
diff changeset
30 #include <math.h>
17e2f90e0d3b [project @ 1997-07-08 02:17:36 by jwe]
jwe
parents: 3067
diff changeset
31
3067
aa76250a5b87 [project @ 1997-07-02 21:54:12 by jwe]
jwe
parents:
diff changeset
32 int
aa76250a5b87 [project @ 1997-07-02 21:54:12 by jwe]
jwe
parents:
diff changeset
33 matherr (struct exception *x)
aa76250a5b87 [project @ 1997-07-02 21:54:12 by jwe]
jwe
parents:
diff changeset
34 {
aa76250a5b87 [project @ 1997-07-02 21:54:12 by jwe]
jwe
parents:
diff changeset
35 /* Possibly print our own message someday. Should probably be
aa76250a5b87 [project @ 1997-07-02 21:54:12 by jwe]
jwe
parents:
diff changeset
36 user-switchable. */
aa76250a5b87 [project @ 1997-07-02 21:54:12 by jwe]
jwe
parents:
diff changeset
37
aa76250a5b87 [project @ 1997-07-02 21:54:12 by jwe]
jwe
parents:
diff changeset
38 switch (x->type)
aa76250a5b87 [project @ 1997-07-02 21:54:12 by jwe]
jwe
parents:
diff changeset
39 {
aa76250a5b87 [project @ 1997-07-02 21:54:12 by jwe]
jwe
parents:
diff changeset
40 case DOMAIN:
aa76250a5b87 [project @ 1997-07-02 21:54:12 by jwe]
jwe
parents:
diff changeset
41 case SING:
aa76250a5b87 [project @ 1997-07-02 21:54:12 by jwe]
jwe
parents:
diff changeset
42 case OVERFLOW:
aa76250a5b87 [project @ 1997-07-02 21:54:12 by jwe]
jwe
parents:
diff changeset
43 case UNDERFLOW:
aa76250a5b87 [project @ 1997-07-02 21:54:12 by jwe]
jwe
parents:
diff changeset
44 case TLOSS:
aa76250a5b87 [project @ 1997-07-02 21:54:12 by jwe]
jwe
parents:
diff changeset
45 case PLOSS:
aa76250a5b87 [project @ 1997-07-02 21:54:12 by jwe]
jwe
parents:
diff changeset
46 default:
aa76250a5b87 [project @ 1997-07-02 21:54:12 by jwe]
jwe
parents:
diff changeset
47 break;
aa76250a5b87 [project @ 1997-07-02 21:54:12 by jwe]
jwe
parents:
diff changeset
48 }
aa76250a5b87 [project @ 1997-07-02 21:54:12 by jwe]
jwe
parents:
diff changeset
49
aa76250a5b87 [project @ 1997-07-02 21:54:12 by jwe]
jwe
parents:
diff changeset
50 /* But don't print the system message. */
aa76250a5b87 [project @ 1997-07-02 21:54:12 by jwe]
jwe
parents:
diff changeset
51
aa76250a5b87 [project @ 1997-07-02 21:54:12 by jwe]
jwe
parents:
diff changeset
52 return 1;
aa76250a5b87 [project @ 1997-07-02 21:54:12 by jwe]
jwe
parents:
diff changeset
53 }
aa76250a5b87 [project @ 1997-07-02 21:54:12 by jwe]
jwe
parents:
diff changeset
54 #endif
aa76250a5b87 [project @ 1997-07-02 21:54:12 by jwe]
jwe
parents:
diff changeset
55
aa76250a5b87 [project @ 1997-07-02 21:54:12 by jwe]
jwe
parents:
diff changeset
56 /*
aa76250a5b87 [project @ 1997-07-02 21:54:12 by jwe]
jwe
parents:
diff changeset
57 ;;; Local Variables: ***
aa76250a5b87 [project @ 1997-07-02 21:54:12 by jwe]
jwe
parents:
diff changeset
58 ;;; mode: C ***
aa76250a5b87 [project @ 1997-07-02 21:54:12 by jwe]
jwe
parents:
diff changeset
59 ;;; End: ***
aa76250a5b87 [project @ 1997-07-02 21:54:12 by jwe]
jwe
parents:
diff changeset
60 */