File: a60.h

package info (click to toggle)
nase-a60 0.20a-2
  • links: PTS
  • area: main
  • in suites: woody
  • size: 2,580 kB
  • ctags: 1,111
  • sloc: ansic: 10,343; yacc: 965; sh: 360; lex: 336; makefile: 249
file content (91 lines) | stat: -rw-r--r-- 2,270 bytes parent folder | download | duplicates (3)
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
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
/*
 * Copyright (C) 1991-1999 Erik Schoenfelder (schoenfr@ibr.cs.tu-bs.de)
 *
 * This file is part of NASE A60.
 * 
 * NASE A60 is free software; you can redistribute it and/or modify it
 * under the terms of the GNU General Public License as published by
 * the Free Software Foundation; either version 2, or (at your option)
 * any later version.
 *
 * NASE A60 is distributed in the hope that it will be useful, but
 * WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
 * General Public License for more details.
 * 
 * You should have received a copy of the GNU General Public License
 * along with NASE A60; see the file COPYING.  If not, write to the Free
 * Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.
 *
 * a60.h:						aug '90
 *
 * Erik Schoenfelder (schoenfr@ibr.cs.tu-bs.de)
 */

#ifndef A60_H_HOOK
#define A60_H_HOOK

#include "tree.h"

#ifdef __STDC__
# define P(x)  x
#else
# define P(x)  ()
#endif


#ifdef WIN32
# define MSDOS
#endif

/* struct for passing type and own flag. */
typedef struct own_and_type {
	ENUM type_tag type;
	int own;
} OWNTYPE;


/*
 * the waste of globals...
 */

extern FILE *infile;
extern char *infname;
extern char *outfname;
extern TREE *rtree;
extern int verbose;
extern int cverbose;
extern int strict_a60;		/* strict a60 usage */
extern int scan_strict;		/* scan in a strict manner */
extern int run_with_xa60;	/* force some actions for xa60 */
extern int rwarn;		/* warn about runtime decisions */
extern int trace;
extern int lineno;
extern int nerrors;		/* parse errors (first pass) */
extern int cerrors;		/* check errors (second pass) */
extern int yydebug;
extern int do_debug;		/* general debug flag */
extern int do_memdebug;		/* mem allocaton debug flag */
extern int do_memstat;
extern int make_bin;
extern int include_file_as_cpp; 

extern int yylex ();
extern int yyparse();

/** extern int get_keyword P((char *)); **/

extern int check_tree P((void));
extern void check P((struct _tree *));

extern void yyerror P((char *s));
extern void yywarning P((char *s));
#ifndef VPRINTF_MISSING
extern void a60_error P((char *, int, char *, ...));
#else
extern void a60_error ();
#endif

#undef P

#endif /* A60_H_HOOK */