1234567891011121314151617181920212223242526272829303132333435363738394041 |
- /*
- * (c) copyright 1987 by the Vrije Universiteit, Amsterdam, The Netherlands.
- * See the copyright notice in the ACK home directory, in the file "Copyright".
- */
- /* $Id$ */
- /* DEFINITION OF DECLARATOR DESCRIPTORS */
- /* A 'declarator' consists of an idf and a linked list of
- language-defined unary operations: *, [] and (), called
- decl_unary's.
- */
- struct declarator {
- /* struct declarator *next; */
- struct idf *dc_idf;
- struct decl_unary *dc_decl_unary;
- struct formal *dc_formal; /* params for function */
- };
- struct formal { /* list of formals */
- struct formal *next;
- struct idf *fm_idf;
- };
- /* ALLOCDEF "formal" 5 */
- #define NO_PARAMS ((struct formal *) 0)
- struct decl_unary {
- struct decl_unary *next;
- int du_fund; /* POINTER, ARRAY or FUNCTION */
- int du_typequal; /* CONST, VOLATILE, or 0 */
- arith du_count; /* for ARRAYs only */
- struct proto *du_proto; /* params for function or prototype */
- };
- /* ALLOCDEF "decl_unary" 10 */
- extern struct type *declare_type();
- extern struct declarator null_declarator;
|