COMPORT – Compilador Portugol - Nilo Menezes
COMPORT – Compilador Portugol - Nilo Menezes
COMPORT – Compilador Portugol - Nilo Menezes
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