source: vis_dev/glu-2.3/src/cmuBdd/bddwarn.c @ 104

Last change on this file since 104 was 13, checked in by cecile, 13 years ago

library glu 2.3

File size: 1.1 KB
RevLine 
[13]1/* BDD error and argument checking routines */
2
3
4#include <stdio.h>
5#include <stdarg.h>
6#include "bddint.h"
7
8#if STDC_HEADERS
9#  include <stdlib.h>
10#else
11#  if defined(__STDC__)
12extern void exit(int);
13#  else
14extern void exit();
15#  endif
16#endif
17
18
19/* cmu_bdd_warning(message) prints a warning and returns. */
20
21void
22cmu_bdd_warning(char *message)
23{
24  fprintf(stderr, "BDD library: warning: %s\n", message);
25}
26
27
28/* cmu_bdd_fatal(message) prints an error message and exits. */
29
30void
31cmu_bdd_fatal(char *message)
32{
33  fprintf(stderr, "BDD library: error: %s\n", message);
34  exit(1);
35  /* NOTREACHED */
36}
37
38
39int
40bdd_check_arguments(int count, ...)
41{
42  int all_valid;
43  va_list ap;
44  bdd f;
45
46  va_start(ap, count);
47  all_valid=1;
48  while (count)
49    {
50      f=va_arg(ap, bdd);
51      {
52        BDD_SETUP(f);
53        if (!f)
54          all_valid=0;
55        else if (BDD_REFS(f) == 0)
56          cmu_bdd_fatal("bdd_check_arguments: argument has zero references");
57      }
58      --count;
59    }
60  return (all_valid);
61}
62
63
64void
65bdd_check_array(bdd *fs)
66{
67  while (*fs)
68    {
69      bdd_check_arguments(1, *fs);
70      ++fs;
71    }
72}
Note: See TracBrowser for help on using the repository browser.