Curle
59329d963f
Currently has two bugs. First, all functions are resolved to index 0 (currently PrintInteger) Second, the register used for returning is immediately overwritten by the next allocated register. This means addition of function return values is a little silly. Also, commit signing!
30 lines
512 B
C
30 lines
512 B
C
/*************/
|
|
/*GEMWIRE */
|
|
/* ERYTHRO*/
|
|
/*************/
|
|
|
|
#pragma once
|
|
#include <stdio.h>
|
|
#include <Defs.h>
|
|
|
|
#ifndef extern_
|
|
#define extern_ extern
|
|
#endif
|
|
|
|
#define TEXTLEN 512
|
|
#define SYMBOLS 1024
|
|
|
|
extern_ struct SymbolTable Symbols[SYMBOLS];
|
|
|
|
extern_ char* TokenStrings[];
|
|
extern_ char* TokenNames[];
|
|
|
|
extern_ int CurrentFunction;
|
|
extern_ int Line;
|
|
extern_ int Overread;
|
|
|
|
extern_ FILE* SourceFile;
|
|
extern_ FILE* OutputFile;
|
|
|
|
extern_ struct Token CurrentToken;
|
|
extern_ char CurrentIdentifier[TEXTLEN + 1]; |