projects
/
uebersetzerbau-ss10.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
codea: print tree (bessere debugausgabe)
[uebersetzerbau-ss10.git]
/
codea
/
parser.y
diff --git
a/codea/parser.y
b/codea/parser.y
index 34dadf16ebc3b310f2bd51bce6a7303e3b6f4d79..e75f2efcd55d1b4eb76dbca072bb89adce393e12 100644
(file)
--- a/
codea/parser.y
+++ b/
codea/parser.y
@@
-107,7
+107,7
@@
Statseq:
@{
@i @Statement.sin@ = @Statseq.0.s@;
@i @Statseq.1.s@ = @Statement.sout@;
@{
@i @Statement.sin@ = @Statseq.0.s@;
@i @Statseq.1.s@ = @Statement.sout@;
- @gen burm_label(@Statement.node@); burm_reduce(@Statement.node@, 1);
+ @gen
write_tree(@Statement.node@, 0);
burm_label(@Statement.node@); burm_reduce(@Statement.node@, 1);
@}
|
@}
|
@@
-186,7
+186,6
@@
Feld: Term '.' IDENT
@{
@c check(@Feld.s@, @IDENT.name@, S_FIELD);
@i @Feld.node@ = TREENULL;
@{
@c check(@Feld.s@, @IDENT.name@, S_FIELD);
@i @Feld.node@ = TREENULL;
- @reg fprintf(stderr, "w00t8\n");
@}
;
@}
;
@@
-198,7
+197,7
@@
Expr:
| NOT Term
@{
| NOT Term
@{
- @i @Expr.node@ = TREENULL;
fprintf(stderr, "w00t2\n");
+ @i @Expr.node@ = TREENULL;
@}
| Term Minusterm
@}
| Term Minusterm
@@
-223,23
+222,23
@@
Expr:
| Term Multerm
@{
| Term Multerm
@{
- @i @Expr.node@ = TREENULL;
fprintf(stderr, "w00t4\n");
+ @i @Expr.node@ = TREENULL;
@}
| Term Orterm
@{
@}
| Term Orterm
@{
- @i @Expr.node@ = TREENULL;
fprintf(stderr, "w00t5\n");
+ @i @Expr.node@ = TREENULL;
@}
| Term '<' Term
@{
@}
| Term '<' Term
@{
- @i @Expr.node@ = TREENULL;
fprintf(stderr, "w00t6\n");
+ @i @Expr.node@ = TREENULL;
/* das is bloedsinn atm */ @i @Expr.imm@ = @Term.0.imm@ && @Term.1.imm@;
@}
| Term '=' Term
@{
/* das is bloedsinn atm */ @i @Expr.imm@ = @Term.0.imm@ && @Term.1.imm@;
@}
| Term '=' Term
@{
- @i @Expr.node@ = TREENULL;
fprintf(stderr, "w00t7\n");
+ @i @Expr.node@ = TREENULL;
/* das is bloedsinn atm */ @i @Expr.imm@ = @Term.0.imm@ && @Term.1.imm@;
@}
;
/* das is bloedsinn atm */ @i @Expr.imm@ = @Term.0.imm@ && @Term.1.imm@;
@}
;
@@
-266,13
+265,11
@@
Multerm:
'*' Term Multerm
@{
@i @Multerm.node@ = TREENULL;
'*' Term Multerm
@{
@i @Multerm.node@ = TREENULL;
- @reg fprintf(stderr, "mul1\n");
@}
| '*' Term
@{
@i @Multerm.node@ = TREENULL;
@}
| '*' Term
@{
@i @Multerm.node@ = TREENULL;
- @reg fprintf(stderr, "mul2\n");
@}
;
@}
;
@@
-280,12
+277,10
@@
Orterm:
OR Term Orterm
@{
@i @Orterm.node@ = TREENULL;
OR Term Orterm
@{
@i @Orterm.node@ = TREENULL;
- @reg fprintf(stderr, "or1\n");
@}
| OR Term
@{
@i @Orterm.node@ = TREENULL;
@}
| OR Term
@{
@i @Orterm.node@ = TREENULL;
- @reg fprintf(stderr, "or2\n");
@}
;
@}
;