58 lines
877 B
Plaintext
58 lines
877 B
Plaintext
context test1
|
|
{
|
|
s =>
|
|
{
|
|
goto lab1;
|
|
if( ${testnotnull} )
|
|
{
|
|
lab1:
|
|
NoOp(hello);
|
|
}
|
|
else
|
|
{
|
|
lab1:
|
|
MoOp(goodbye);
|
|
}
|
|
}
|
|
|
|
1 =>
|
|
{
|
|
lab1:
|
|
NoOp(This one is OK.);
|
|
}
|
|
}
|
|
|
|
macro endcall5(type) {
|
|
switch(${type}) {
|
|
case out:
|
|
if(${testnotnull}) {
|
|
NoOp(whoosh);
|
|
goto ptr1 ; // <-- goto call to valid label
|
|
}
|
|
case in:
|
|
ptr1: // The First label is the valid one...
|
|
if(${testnotnull}) {
|
|
NoOp(wow);
|
|
goto ptr1 ; // <-- goto call to valid label
|
|
}
|
|
Noop(esac) ;
|
|
}
|
|
if(${testnotnull}) {
|
|
goto ptr1;
|
|
}
|
|
switch(${type}) {
|
|
case out:
|
|
switch(${type})
|
|
{
|
|
case in:
|
|
if(${testnotnull}) {
|
|
ptr1: // <-- duplicate label (macros are about the equiv of an extension)
|
|
Softhangup(${CHANNEL});
|
|
break ;
|
|
}
|
|
Noop(esac) ;
|
|
}
|
|
}
|
|
return;
|
|
}
|