home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Frozen Fish 1: Amiga
/
FrozenFish-Apr94.iso
/
bbs
/
alib
/
d1xx
/
d110
/
pdc.lha
/
Pdc
/
src
/
Intexpr.c
< prev
next >
Wrap
C/C++ Source or Header
|
1987-10-28
|
2KB
|
57 lines
#include <stdio.h>
#include "c.h"
#include "expr.h"
#include "gen.h"
#include "cglbdec.h"
/*
*68000 C compiler
*
*Copyright 1984, 1985, 1986 Matthew Brandt.
* all commercial rights reserved.
*
*This compiler is intended as an instructive tool for personal use. Any
*use for profit without the written consent of the author is prohibited.
*
*This compiler may be distributed freely for non-commercial use as long
*as this notice stays intact. Please forward any enhancements or questions
*to:
*
*Matthew Brandt
*Box 920337
*Norcross, Ga 30092
*/
extern SYM *search();
long intexpr() /* simple integer value */
{ long temp;
SYM *sp;
if(lastst == id) {
sp = search(lastid,lsyms.head);
if( sp == NULL)
sp = search(lastid,gsyms.head);
if(sp == NULL) {
error(ERR_UNDEFINED);
getsym();
return 0;
}
if(sp->storage_class != sc_const) {
error(ERR_SYNTAX);
getsym();
return 0;
}
getsym();
return sp->value.i;
}
else if(lastst == iconst) {
temp = ival;
getsym();
return temp;
}
getsym();
error(ERR_SYNTAX);
return 0;
}