]> andersk Git - splint.git/blame - src/Headers/system_constants.h
Merged code tree with Dave Evans's version. Many changes to numberous to list....
[splint.git] / src / Headers / system_constants.h
CommitLineData
885824d3 1/*
28bf4b0b 2** Copyright (C) University of Virginia, Massachusetts Institue of Technology 1994-2001.
885824d3 3** See ../LICENSE for license information.
4*/
5# ifndef SYSTEM_CONSTANTS_H
6# define SYSTEM_CONSTANTS_H
7
8# ifndef NOLCL
9# include "lcl_constants.h"
10# endif
11
12/* exit codes */
13
14/*@constant int LLSUCCESS; @*/
15# define LLSUCCESS EXIT_SUCCESS
16
17/*@constant int LLFAILURE; @*/
18# define LLFAILURE EXIT_FAILURE
19
20/*@constant int LLGIVEUP; @*/
21# define LLGIVEUP EXIT_FAILURE
22
23/*@constant int LLINTERRUPT; @*/
24# define LLINTERRUPT EXIT_FAILURE
25
26/*@constant int DEFAULTMAXMODS; @*/
27# define DEFAULTMAXMODS 32
28
29/*
30** number of parse errors before quiting
31*/
32
33/*@constant int GIVEUPPARSE; @*/
34# define GIVEUPPARSE 5
35
36/*
37** how many recursive searches to do before bailing!
38*/
39
40/*@constant int MAXDEPTH; @*/
41# define MAXDEPTH 10
42
43/*
44** This limits the number of recursive calls to aliasTable_canAliasAux.
45** It is necessary in the presence on recursive nested data structures.
46** Note that we don't want to simply detect recursion and quit, since
47** aliasing may be apparent only at the deeper level. It would be better
48** to do something in the alias table to confirm that there are no aliases
49** recorded below a given depth, but in practice this is much easier!
50*/
51
52/*@constant int ALIASSEARCHLIMIT; @*/
53# define ALIASSEARCHLIMIT 8
54
55/*
56** This one's compilcated. You probably don't want to change
57** it.
58**
59** lclint maintains a table of ctype's (its representation of
60** C types) and represents types internally as an index into
61** this table. This greatly improves performance of type
62** checking and saves memory. For simple derived types, it
63** is easy to find if the type is already in the table. For
64** more complicated types (e.g., functions and structures),
65** we check if a type is already in the table by looking
66** backwards for matches. The last DEFAULT_OPTLEVEL types
67** entered into the table are checked. Increasing this value
68** may improve memory performance, but cost in execution time.
69**
70*/
71
72/*@constant int DEFAULT_OPTLEVEL; @*/
73# define DEFAULT_OPTLEVEL 15
74
75/*
76** There are many *List and *Set types used by lclint (all
77** generated automatically using a template and script).
78** For each, the BASESIZE is the number of entries the
79** structure grows by each time it runs out of space.
80** Depending on expected usage, each List/Set defines
81** its BASESIZE to one of these three values.
82*/
83
84/*@constant int SMALLBASESIZE; @*/
85# define SMALLBASESIZE 4
86
87/*@constant int MIDBASESIZE; @*/
88# define MIDBASESIZE 8
89
90/*@constant int LARGEBASESIZE; @*/
91# define LARGEBASESIZE 16
92
93/*@constant int BIGBASESIZE; @*/
94# define BIGBASESIZE 256
95
96/*@constant int HUGEBASESIZE; @*/
97# define HUGEBASESIZE 512
98
99/*
100** Size of hash table for file names.
101*/
102
103/*@constant int FTHASHSIZE; @*/
104# define FTHASHSIZE 273
105
106/*
107** BASESIZE for C environment frames.
108*/
109
110/*@constant int CBASESIZE; @*/
111# define CBASESIZE 4
112
113/*
114** The global environment (across files) is stored in
115** a hash table.
116*/
117
118/*@constant int CGLOBBASESIZE; @*/
119# define CGLOBBASESIZE 1024
120
121/*@constant int CGLOBHASHSIZE; @*/
122# define CGLOBHASHSIZE 1795
123
124/*@constant int LLHASHSIZE; @*/
125# define LLHASHSIZE 1279
126
127# else
128# error "Multiple include"
129# endif
130
131
132
133
134
135
This page took 0.121603 seconds and 5 git commands to generate.