blob: 7a8626b375af8e6f4688cfd083d3bae484185297 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
|
#ifndef MAIN_H
#define MAIN_H
#include "ghcconfig.h"
#include <stdio.h>
#ifdef __STDC__
#define PROTO(x) x
#else
#define PROTO(x) ()
#endif
/* our own ASSERT macro (for C) */
#ifndef DEBUG
#define ASSERT(predicate) /*nothing*/
#else
void _ghcAssert PROTO((char *, unsigned int));
#define ASSERT(predicate) \
if (predicate) \
/*null*/; \
else \
_ghcAssert(__FILE__, __LINE__)
#endif
/* partain: some ubiquitous types: floatish & intish.
Dubious to use float/int, but that is what it used to be...
(WDP 95/03)
*/
typedef double floatish;
typedef double doublish; /* higher precision, if anything; little used */
typedef int boolish;
/* Use "long long" if we have it: the numbers in profiles can easily
* overflow 32 bits after a few seconds execution.
*/
#ifdef HAVE_LONG_LONG
typedef long long int intish;
#else
typedef long int intish;
#endif
extern intish nsamples;
extern intish nmarks;
extern intish nidents;
extern floatish maxcombinedheight;
extern floatish areabelow;
extern floatish epsfwidth;
extern floatish xrange;
extern floatish yrange;
extern floatish auxxrange;
extern floatish auxyrange;
extern boolish eflag;
extern boolish gflag;
extern boolish yflag;
extern boolish bflag;
extern boolish sflag;
extern boolish cflag;
extern boolish multipageflag;
extern char *programname;
extern char *hpfile;
extern char *auxfile;
extern FILE *hpfp;
extern FILE *psfp;
#endif /* MAIN_H */
|