Array parameters lose some semantic information in the translation in the current system. The grammar does not allow for bit fields or qualifications on anything but primitive types, but these will be accomodated eventually. This section describes the interfaces. Each of these contains a list of all the records of the type indicated by their names. The main entry point to the back end is the procedure process , which takes a single file name as an argument.
Process initializes globals, reads the file, and processes the records.
Record processing consists of some general analysis and target-specific code generation. A number of data structure accessors and mutators are also available. These are generic procedures which work on all of the record types. The procedure record-tag returns the tag of the record currently being held. It can also be applied to types.