anchor.diff:  	| "r"^ LSQUARE! expr RSQUARE!
   	| "m"^ LSQUARE! expr RSQUARE!
   	| NAME^
  -	| NAME LSQUARE^ NAME RSQUARE!
  +	| NAME LSQUARE! (NAME|NUM) RSQUARE!	{ ## = #([TABLE,"TABLE"], ##) }
   	| LPAREN! expr RPAREN!
   	| LSQUARE! expr QUEST^ expr COLON! expr RSQUARE!
  -	| NAME LPAREN! expr_list RPAREN!
  -		{ ## = #([BUILTIN,"BUILTIN"], ##) }
  +	| NAME LPAREN! expr_list RPAREN! { ## = #([BUILTIN,"BUILTIN"], ##) }
   	;
   
   // bit extraction, sign extension, cast
  
positive.code: 		{
              for n, v in inam:
                  self.locals.append(v)
                  //print "Before: ", ib.toStringTree()
                  self.rtl_expand(self.astFactory.dupTree(ib))
                  //print "After :", self.returnAST
                  rtl = self.returnAST
                  //print
                  self.locals.pop()
                  
                  if n in self.instructions:
  
negative.code: start
  	: #(SPEC (part)*)
  		{
              // Rebuild the expanded instructions
              names = self.instructions.keys()
              names.sort()
              for name in names:
  