summaryrefslogtreecommitdiff
path: root/bcc/exptree.c
diff options
context:
space:
mode:
authorRobert de Bath <rdebath@poboxes.com>1996-09-03 22:06:58 +0200
committerLubomir Rintel <lkundrak@v3.sk>2013-10-23 23:31:01 +0200
commit0936b9aeab611665645a4e6bafaded7ca76dd189 (patch)
treefe6384035e96adc260f621d27909be67ad2e724a /bcc/exptree.c
parente85ee07172eccafd9441362e774f7b184810d008 (diff)
downloaddev86-0936b9aeab611665645a4e6bafaded7ca76dd189.tar.gz
Import Dev86-0.0.7.tar.gzv0.0.7
Diffstat (limited to 'bcc/exptree.c')
-rw-r--r--bcc/exptree.c12
1 files changed, 10 insertions, 2 deletions
diff --git a/bcc/exptree.c b/bcc/exptree.c
index c4da1c4..6b24eff 100644
--- a/bcc/exptree.c
+++ b/bcc/exptree.c
@@ -13,7 +13,11 @@
#include "sizes.h"
#include "type.h"
+#ifdef __AS386_16__
+#define ETREESIZE 300
+#else
#define ETREESIZE 1200
+#endif
#define errtype itype
#define redtype ctype
#define uredtype uctype
@@ -96,7 +100,7 @@ register struct nodestruct *nodeptr;
nodeptr->right = castnode(nodeptr->nodetype, right);
}
}
-#ifdef I8088
+#ifdef I80386
else if (i386_32 && bothscalar & SHORT)
{
nodeptr->nodetype = itype;
@@ -133,7 +137,11 @@ struct nodestruct *nodeptr;
PRIVATE void etreefull()
{
+#if ETREESIZE == 1200
limiterror("expression too complex (1201 nodes)");
+#else
+ limiterror("expression too complex (ETREESIZE)");
+#endif
}
PUBLIC void etreeinit()
@@ -1043,7 +1051,7 @@ struct nodestruct *nodeptr;
nodeptr->right = castnode(rscalar & UNSIGNED
? ultype : targtype, right);
}
-#ifdef I8088
+#ifdef I80386
else if (i386_32 && lscalar & INT)
{
if (rscalar & SHORT)