Annotation of researchv9/cmd/cpp/cpy.y, revision 1.1.1.1

1.1       root        1: %term number stop DEFINED
                      2: %term EQ NE LE GE LS RS
                      3: %term ANDAND OROR
                      4: %left ','
                      5: %right '='
                      6: %right '?' ':'
                      7: %left OROR
                      8: %left ANDAND
                      9: %left '|' '^'
                     10: %left '&'
                     11: %binary EQ NE
                     12: %binary '<' '>' LE GE
                     13: %left LS RS
                     14: %left '+' '-'
                     15: %left '*' '/' '%'
                     16: %right '!' '~' UMINUS
                     17: %left '(' '.'
                     18: %%
                     19: S:     e stop  ={return($1);}
                     20: 
                     21: 
                     22: e:       e '*' e
                     23:                ={$$ = $1 * $3;}
                     24:        | e '/' e
                     25:                ={$$ = $1 / $3;}
                     26:        | e '%' e
                     27:                ={$$ = $1 % $3;}
                     28:        | e '+' e
                     29:                ={$$ = $1 + $3;}
                     30:        | e '-' e
                     31:                ={$$ = $1 - $3;}
                     32:        | e LS e
                     33:                ={$$ = $1 << $3;}
                     34:        | e RS e
                     35:                ={$$ = $1 >> $3;}
                     36:        | e '<' e
                     37:                ={$$ = $1 < $3;}
                     38:        | e '>' e
                     39:                ={$$ = $1 > $3;}
                     40:        | e LE e
                     41:                ={$$ = $1 <= $3;}
                     42:        | e GE e
                     43:                ={$$ = $1 >= $3;}
                     44:        | e EQ e
                     45:                ={$$ = $1 == $3;}
                     46:        | e NE e
                     47:                ={$$ = $1 != $3;}
                     48:        | e '&' e
                     49:                ={$$ = $1 & $3;}
                     50:        | e '^' e
                     51:                ={$$ = $1 ^ $3;}
                     52:        | e '|' e
                     53:                ={$$ = $1 | $3;}
                     54:        | e ANDAND e
                     55:                ={$$ = $1 && $3;}
                     56:        | e OROR e
                     57:                ={$$ = $1 || $3;}
                     58:        | e '?' e ':' e
                     59:                ={$$ = $1 ? $3 : $5;}
                     60:        | e ',' e
                     61:                ={$$ = $3;}
                     62:        | term
                     63:                ={$$ = $1;}
                     64: term:
                     65:          '-' term %prec UMINUS
                     66:                ={$$ = -$1;}
                     67:        | '!' term
                     68:                ={$$ = !$2;}
                     69:        | '~' term
                     70:                ={$$ = ~$2;}
                     71:        | '(' e ')'
                     72:                ={$$ = $2;}
                     73:        | DEFINED '(' number ')'
                     74:                ={$$= $3;}
                     75:        | DEFINED number
                     76:                ={$$ = $2;}
                     77:        | number
                     78:                ={$$= $1;}
                     79: %%
                     80: # include "yylex.c"

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.