projects
/
platform
/
upstream
/
byacc.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Imported Upstream version 20101229
[platform/upstream/byacc.git]
/
test
/
calc1.tab.c
diff --git
a/test/calc1.tab.c
b/test/calc1.tab.c
index
0597b94
..
e55e64a
100644
(file)
--- a/
test/calc1.tab.c
+++ b/
test/calc1.tab.c
@@
-112,12
+112,13
@@
INTERVAL;
INTERVAL vmul(double, double, INTERVAL);
INTERVAL vdiv(double, double, INTERVAL);
INTERVAL vmul(double, double, INTERVAL);
INTERVAL vdiv(double, double, INTERVAL);
+
int dcheck(INTERVAL);
double dreg[26];
INTERVAL vreg[26];
int dcheck(INTERVAL);
double dreg[26];
INTERVAL vreg[26];
-#line 2
7
"calc1.y"
+#line 2
8
"calc1.y"
#ifdef YYSTYPE
#undef YYSTYPE_IS_DECLARED
#define YYSTYPE_IS_DECLARED 1
#ifdef YYSTYPE
#undef YYSTYPE_IS_DECLARED
#define YYSTYPE_IS_DECLARED 1
@@
-131,7
+132,7
@@
typedef union
INTERVAL vval;
} YYSTYPE;
#endif /* !YYSTYPE_IS_DECLARED */
INTERVAL vval;
} YYSTYPE;
#endif /* !YYSTYPE_IS_DECLARED */
-#line 13
5
"calc1.tab.c"
+#line 13
6
"calc1.tab.c"
/* compatibility with bison */
#ifdef YYPARSE_PARAM
/* compatibility with FreeBSD */
/* compatibility with bison */
#ifdef YYPARSE_PARAM
/* compatibility with FreeBSD */
@@
-158,7
+159,6
@@
typedef union
#define YYERROR_CALL(msg) yyerror(msg)
extern int YYPARSE_DECL();
#define YYERROR_CALL(msg) yyerror(msg)
extern int YYPARSE_DECL();
-extern int YYLEX_DECL();
#define DREG 257
#define VREG 258
#define DREG 257
#define VREG 258
@@
-342,9
+342,14
@@
YYSTYPE yylval;
/* variables for the parser stack */
static YYSTACKDATA yystack;
/* variables for the parser stack */
static YYSTACKDATA yystack;
-#line 17
2
"calc1.y"
+#line 17
3
"calc1.y"
/* beginning of subroutines section */
/* beginning of subroutines section */
+#ifdef YYBYACC
+extern int YYLEX_DECL();
+static void YYERROR_DECL();
+#endif
+
#define BSZ 50 /* buffer size for floating point numbers */
/* lexical analysis */
#define BSZ 50 /* buffer size for floating point numbers */
/* lexical analysis */
@@
-473,7
+478,7
@@
vdiv(double a, double b, INTERVAL v)
{
return (hilo(a / v.hi, a / v.lo, b / v.hi, b / v.lo));
}
{
return (hilo(a / v.hi, a / v.lo, b / v.hi, b / v.lo));
}
-#line 4
77
"calc1.tab.c"
+#line 4
82
"calc1.tab.c"
#if YYDEBUG
#include <stdio.h> /* needed for printf */
#if YYDEBUG
#include <stdio.h> /* needed for printf */
@@
-498,18
+503,14
@@
static int yygrowstack(YYSTACKDATA *data)
newsize = YYMAXDEPTH;
i = data->s_mark - data->s_base;
newsize = YYMAXDEPTH;
i = data->s_mark - data->s_base;
- newss = (data->s_base != 0)
- ? (short *)realloc(data->s_base, newsize * sizeof(*newss))
- : (short *)malloc(newsize * sizeof(*newss));
+ newss = (short *)realloc(data->s_base, newsize * sizeof(*newss));
if (newss == 0)
return -1;
data->s_base = newss;
data->s_mark = newss + i;
if (newss == 0)
return -1;
data->s_base = newss;
data->s_mark = newss + i;
- newvs = (data->l_base != 0)
- ? (YYSTYPE *)realloc(data->l_base, newsize * sizeof(*newvs))
- : (YYSTYPE *)malloc(newsize * sizeof(*newvs));
+ newvs = (YYSTYPE *)realloc(data->l_base, newsize * sizeof(*newvs));
if (newvs == 0)
return -1;
if (newvs == 0)
return -1;
@@
-684,85
+685,85
@@
yyreduce:
switch (yyn)
{
case 3:
switch (yyn)
{
case 3:
-#line 5
3
"calc1.y"
+#line 5
4
"calc1.y"
{
(void) printf("%15.8f\n", yystack.l_mark[-1].dval);
}
break;
case 4:
{
(void) printf("%15.8f\n", yystack.l_mark[-1].dval);
}
break;
case 4:
-#line 5
7
"calc1.y"
+#line 5
8
"calc1.y"
{
(void) printf("(%15.8f, %15.8f)\n", yystack.l_mark[-1].vval.lo, yystack.l_mark[-1].vval.hi);
}
break;
case 5:
{
(void) printf("(%15.8f, %15.8f)\n", yystack.l_mark[-1].vval.lo, yystack.l_mark[-1].vval.hi);
}
break;
case 5:
-#line 6
1
"calc1.y"
+#line 6
2
"calc1.y"
{
dreg[yystack.l_mark[-3].ival] = yystack.l_mark[-1].dval;
}
break;
case 6:
{
dreg[yystack.l_mark[-3].ival] = yystack.l_mark[-1].dval;
}
break;
case 6:
-#line 6
5
"calc1.y"
+#line 6
6
"calc1.y"
{
vreg[yystack.l_mark[-3].ival] = yystack.l_mark[-1].vval;
}
break;
case 7:
{
vreg[yystack.l_mark[-3].ival] = yystack.l_mark[-1].vval;
}
break;
case 7:
-#line
69
"calc1.y"
+#line
70
"calc1.y"
{
yyerrok;
}
break;
case 9:
{
yyerrok;
}
break;
case 9:
-#line 7
6
"calc1.y"
+#line 7
7
"calc1.y"
{
yyval.dval = dreg[yystack.l_mark[0].ival];
}
break;
case 10:
{
yyval.dval = dreg[yystack.l_mark[0].ival];
}
break;
case 10:
-#line 8
0
"calc1.y"
+#line 8
1
"calc1.y"
{
yyval.dval = yystack.l_mark[-2].dval + yystack.l_mark[0].dval;
}
break;
case 11:
{
yyval.dval = yystack.l_mark[-2].dval + yystack.l_mark[0].dval;
}
break;
case 11:
-#line 8
4
"calc1.y"
+#line 8
5
"calc1.y"
{
yyval.dval = yystack.l_mark[-2].dval - yystack.l_mark[0].dval;
}
break;
case 12:
{
yyval.dval = yystack.l_mark[-2].dval - yystack.l_mark[0].dval;
}
break;
case 12:
-#line 8
8
"calc1.y"
+#line 8
9
"calc1.y"
{
yyval.dval = yystack.l_mark[-2].dval * yystack.l_mark[0].dval;
}
break;
case 13:
{
yyval.dval = yystack.l_mark[-2].dval * yystack.l_mark[0].dval;
}
break;
case 13:
-#line 9
2
"calc1.y"
+#line 9
3
"calc1.y"
{
yyval.dval = yystack.l_mark[-2].dval / yystack.l_mark[0].dval;
}
break;
case 14:
{
yyval.dval = yystack.l_mark[-2].dval / yystack.l_mark[0].dval;
}
break;
case 14:
-#line 9
6
"calc1.y"
+#line 9
7
"calc1.y"
{
yyval.dval = -yystack.l_mark[0].dval;
}
break;
case 15:
{
yyval.dval = -yystack.l_mark[0].dval;
}
break;
case 15:
-#line 10
0
"calc1.y"
+#line 10
1
"calc1.y"
{
yyval.dval = yystack.l_mark[-1].dval;
}
break;
case 16:
{
yyval.dval = yystack.l_mark[-1].dval;
}
break;
case 16:
-#line 10
6
"calc1.y"
+#line 10
7
"calc1.y"
{
yyval.vval.hi = yyval.vval.lo = yystack.l_mark[0].dval;
}
break;
case 17:
{
yyval.vval.hi = yyval.vval.lo = yystack.l_mark[0].dval;
}
break;
case 17:
-#line 11
0
"calc1.y"
+#line 11
1
"calc1.y"
{
yyval.vval.lo = yystack.l_mark[-3].dval;
yyval.vval.hi = yystack.l_mark[-1].dval;
{
yyval.vval.lo = yystack.l_mark[-3].dval;
yyval.vval.hi = yystack.l_mark[-1].dval;
@@
-774,79
+775,79
@@
case 17:
}
break;
case 18:
}
break;
case 18:
-#line 12
0
"calc1.y"
+#line 12
1
"calc1.y"
{
yyval.vval = vreg[yystack.l_mark[0].ival];
}
break;
case 19:
{
yyval.vval = vreg[yystack.l_mark[0].ival];
}
break;
case 19:
-#line 12
4
"calc1.y"
+#line 12
5
"calc1.y"
{
yyval.vval.hi = yystack.l_mark[-2].vval.hi + yystack.l_mark[0].vval.hi;
yyval.vval.lo = yystack.l_mark[-2].vval.lo + yystack.l_mark[0].vval.lo;
}
break;
case 20:
{
yyval.vval.hi = yystack.l_mark[-2].vval.hi + yystack.l_mark[0].vval.hi;
yyval.vval.lo = yystack.l_mark[-2].vval.lo + yystack.l_mark[0].vval.lo;
}
break;
case 20:
-#line 1
29
"calc1.y"
+#line 1
30
"calc1.y"
{
yyval.vval.hi = yystack.l_mark[-2].dval + yystack.l_mark[0].vval.hi;
yyval.vval.lo = yystack.l_mark[-2].dval + yystack.l_mark[0].vval.lo;
}
break;
case 21:
{
yyval.vval.hi = yystack.l_mark[-2].dval + yystack.l_mark[0].vval.hi;
yyval.vval.lo = yystack.l_mark[-2].dval + yystack.l_mark[0].vval.lo;
}
break;
case 21:
-#line 13
4
"calc1.y"
+#line 13
5
"calc1.y"
{
yyval.vval.hi = yystack.l_mark[-2].vval.hi - yystack.l_mark[0].vval.lo;
yyval.vval.lo = yystack.l_mark[-2].vval.lo - yystack.l_mark[0].vval.hi;
}
break;
case 22:
{
yyval.vval.hi = yystack.l_mark[-2].vval.hi - yystack.l_mark[0].vval.lo;
yyval.vval.lo = yystack.l_mark[-2].vval.lo - yystack.l_mark[0].vval.hi;
}
break;
case 22:
-#line 1
39
"calc1.y"
+#line 1
40
"calc1.y"
{
yyval.vval.hi = yystack.l_mark[-2].dval - yystack.l_mark[0].vval.lo;
yyval.vval.lo = yystack.l_mark[-2].dval - yystack.l_mark[0].vval.hi;
}
break;
case 23:
{
yyval.vval.hi = yystack.l_mark[-2].dval - yystack.l_mark[0].vval.lo;
yyval.vval.lo = yystack.l_mark[-2].dval - yystack.l_mark[0].vval.hi;
}
break;
case 23:
-#line 14
4
"calc1.y"
+#line 14
5
"calc1.y"
{
yyval.vval = vmul( yystack.l_mark[-2].vval.lo, yystack.l_mark[-2].vval.hi, yystack.l_mark[0].vval );
}
break;
case 24:
{
yyval.vval = vmul( yystack.l_mark[-2].vval.lo, yystack.l_mark[-2].vval.hi, yystack.l_mark[0].vval );
}
break;
case 24:
-#line 14
8
"calc1.y"
+#line 14
9
"calc1.y"
{
yyval.vval = vmul (yystack.l_mark[-2].dval, yystack.l_mark[-2].dval, yystack.l_mark[0].vval );
}
break;
case 25:
{
yyval.vval = vmul (yystack.l_mark[-2].dval, yystack.l_mark[-2].dval, yystack.l_mark[0].vval );
}
break;
case 25:
-#line 15
2
"calc1.y"
+#line 15
3
"calc1.y"
{
if (dcheck(yystack.l_mark[0].vval)) YYERROR;
yyval.vval = vdiv ( yystack.l_mark[-2].vval.lo, yystack.l_mark[-2].vval.hi, yystack.l_mark[0].vval );
}
break;
case 26:
{
if (dcheck(yystack.l_mark[0].vval)) YYERROR;
yyval.vval = vdiv ( yystack.l_mark[-2].vval.lo, yystack.l_mark[-2].vval.hi, yystack.l_mark[0].vval );
}
break;
case 26:
-#line 15
7
"calc1.y"
+#line 15
8
"calc1.y"
{
if (dcheck ( yystack.l_mark[0].vval )) YYERROR;
yyval.vval = vdiv (yystack.l_mark[-2].dval, yystack.l_mark[-2].dval, yystack.l_mark[0].vval );
}
break;
case 27:
{
if (dcheck ( yystack.l_mark[0].vval )) YYERROR;
yyval.vval = vdiv (yystack.l_mark[-2].dval, yystack.l_mark[-2].dval, yystack.l_mark[0].vval );
}
break;
case 27:
-#line 16
2
"calc1.y"
+#line 16
3
"calc1.y"
{
yyval.vval.hi = -yystack.l_mark[0].vval.lo;
yyval.vval.lo = -yystack.l_mark[0].vval.hi;
}
break;
case 28:
{
yyval.vval.hi = -yystack.l_mark[0].vval.lo;
yyval.vval.lo = -yystack.l_mark[0].vval.hi;
}
break;
case 28:
-#line 16
7
"calc1.y"
+#line 16
8
"calc1.y"
{
yyval.vval = yystack.l_mark[-1].vval;
}
break;
{
yyval.vval = yystack.l_mark[-1].vval;
}
break;
-#line 85
0
"calc1.tab.c"
+#line 85
1
"calc1.tab.c"
}
yystack.s_mark -= yym;
yystate = *yystack.s_mark;
}
yystack.s_mark -= yym;
yystate = *yystack.s_mark;