Annotation of 3BSD/cmd/cpp/cpy.y, revision 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.