ack/lang/cem/cemcom.ansi/proto.str

43 lines
1 KiB
Plaintext
Raw Normal View History

1989-02-07 11:04:05 +00:00
/*
* (c) copyright 1987 by the Vrije Universiteit, Amsterdam, The Netherlands.
* See the copyright notice in the ACK home directory, in the file "Copyright".
*/
#ifndef PROTO_H
#define PROTO_H
1994-06-27 08:03:14 +00:00
/* $Id$ */
1989-02-07 11:04:05 +00:00
/* PARAMETER TYPE LIST DEFINITION */
struct proto {
struct proto *next;
struct type *pl_type; /* parameter type */
struct idf *pl_idf; /* parameter identifier */
short pl_flag; /* see define's */
1989-02-07 11:04:05 +00:00
};
#define NO_PROTO ((struct proto *)0)
#define PL_VOID 0x01
#define PL_FORMAL 0x02
#define PL_ELLIPSIS 0x04
#define PL_ERRGIVEN 0x08
1989-02-07 11:04:05 +00:00
/* ALLOCDEF "proto" 20 */
/* Forward structure declarations */
struct expr;
struct type;
struct declarator;
struct decspecs;
void remove_proto_idfs(register struct proto *pl);
void call_proto(register struct expr **expp);
void update_proto(register struct type *tp, register struct type *otp);
void declare_protos(register struct declarator *dc);
void add_proto(struct proto *pl, struct decspecs *ds, struct declarator *dc,
int lvl);
void check_for_void(register struct proto *pl);
#endif