750a6bc684
+ Addition of function prototypes and include files. + Change function definitions to ANSI C style. + Initial support for CMake + Scripts to generate compiler header is now sed based.
47 lines
839 B
Plaintext
47 lines
839 B
Plaintext
/*
|
|
* (c) copyright 1987 by the Vrije Universiteit, Amsterdam, The Netherlands.
|
|
* See the copyright notice in the ACK home directory, in the file "Copyright".
|
|
*/
|
|
#ifndef SWITCH_H_
|
|
#define SWITCH_H_
|
|
|
|
/* $Id$ */
|
|
|
|
#include "arith.h"
|
|
|
|
struct type;
|
|
struct expr;
|
|
|
|
/* S W I T C H - T A B L E - S T R U C T U R E */
|
|
|
|
struct switch_hdr {
|
|
struct switch_hdr *next;
|
|
label sh_break;
|
|
label sh_default;
|
|
label sh_table;
|
|
int sh_nrofentries;
|
|
struct type *sh_type;
|
|
struct expr *sh_expr;
|
|
arith sh_lowerbd;
|
|
arith sh_upperbd;
|
|
struct case_entry *sh_entries;
|
|
};
|
|
|
|
/* ALLOCDEF "switch_hdr" 2 */
|
|
|
|
struct case_entry {
|
|
struct case_entry *next;
|
|
label ce_label;
|
|
arith ce_value;
|
|
};
|
|
|
|
/* ALLOCDEF "case_entry" 20 */
|
|
|
|
void code_startswitch(struct expr **expp);
|
|
void code_endswitch(void);
|
|
void code_case(struct expr *expr);
|
|
void code_default(void);
|
|
|
|
|
|
|
|
#endif |