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 />

StatSequence ();<br />

}<br />

if (sym == SENAO)<br />

{<br />

Get (sym);<br />

FJump (L);<br />

FixLink (x.a);<br />

StatSequence ();<br />

}<br />

else<br />

FixLink (x.a);<br />

FixLink (L);<br />

if (sym == FIMSE)<br />

Get (sym);<br />

else<br />

Mark ("Fimse?");<br />

break;<br />

case ENQUANTO:<br />

Get (sym);<br />

L = pc;<br />

expression (x);<br />

CJump (x);<br />

// if (sym == DO)<br />

// Get (sym);<br />

// else<br />

// Mark ("DO?");<br />

StatSequence ();<br />

BJump (L);<br />

FixLink (x.a);<br />

if (sym == FIMENQUANTO)<br />

Get (sym);<br />

else<br />

Mark ("fimenquanto?");<br />

break;<br />

}<br />

if (sym == NOVALINHA)<br />

Get (sym);<br />

else if (PertenceConjunto(fimdecomandos, sym))<br />

break;<br />

else<br />

Mark ("Fim de linha ?");<br />

} while (1);<br />

void<br />

IdentList (int Class, Object & first)<br />

{<br />

Object obj;<br />

if (sym == IDENTIFICADOR)<br />

{<br />

NewObj (first, Class);<br />

Get (sym);<br />

while (sym == VIRGULA)<br />

{<br />

Get (sym);<br />

if (sym == IDENTIFICADOR)<br />

{<br />

NewObj (obj, Class);<br />

Get (sym);<br />

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

74

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

Saved successfully!

Ooh no, something went wrong!