#include <string.h>
#include <stdlib.h>
#include <stdio.h>
#include <iostream.h>
typedef struct {
int passingconvention;
int type;//it can be real int or userdefined
} Para;


typedef struct Symbt{
char name[32];//specifies the name of it
int type;//it can be a procedure
	//an integer, real number boolean value or a string
int passingconvention;
int type_entry;//if it is a type Id then ......
int offset;
int entry_point;
int leveldiff;
Para paralist[5];
struct Symbt *next;
} Symbol;

typedef struct {
int current_index;
Symbol * S[8];
} STACK;

typedef struct{
char FieldName[32];
int basetype;
} REC;

typedef struct{
int type;//Integer,Real,Boolean,String or User defined 
int basetype;//array base type
int Lb;//lower bound for array
int Ub;//upper bound for array and Record
REC Field[5];
} TTYPE;

