17.01.2013 Views

COMPORT – Compilador Portugol - Nilo Menezes

COMPORT – Compilador Portugol - Nilo Menezes

COMPORT – Compilador Portugol - Nilo Menezes

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

}<br />

case MAIS:<br />

Get (sym);<br />

term (x);<br />

break;<br />

case MENOS:<br />

Get (sym);<br />

term (x);<br />

Op1 (MENOS, x);<br />

break;<br />

default:<br />

term (x);<br />

}<br />

while (sym == MAIS || sym==MENOS || sym == OU)<br />

{<br />

op = sym;<br />

Get (sym);<br />

if (op == OU)<br />

{<br />

Op1 (op, x);<br />

}<br />

term (y);<br />

Op2 (op, x, y);<br />

}<br />

//NILO: Verificar a equivalencia de Simbolos<br />

void<br />

expression (Item & x)<br />

{<br />

Item y;<br />

int op;<br />

SimpleExpression (x);<br />

}<br />

if (sym == IGUAL || sym == MAIOR || sym == MENOR<br />

|| sym == MAIOR_IGUAL || sym == MENOR_IGUAL<br />

|| sym == DIFERENTE)<br />

{<br />

op = sym;<br />

Get (sym);<br />

SimpleExpression (y);<br />

Relation (op, x, y);<br />

}<br />

void<br />

parameter (Object & fp)<br />

{<br />

Item x;<br />

expression (x);<br />

if (IsParam (fp))<br />

{<br />

Parameter (x, fp->type, fp->Class);<br />

fp = fp->next;<br />

}<br />

else<br />

Mark ("Parâmetros demais");<br />

}<br />

void<br />

param (Item & x)<br />

{<br />

ComPort <strong>–</strong> <strong>Compilador</strong> <strong>Portugol</strong><br />

71

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!