{ # while
    case ( scansavc ) of # case
    {
EOF:
    {
yyline := startline
yyinfnm := startfnm
do_retry := TRUE
# return an end of file
} # EOF
"\n":
    {
yyline +:= 1
yyvline +:= 1
if( c == ESCCHAR & pflag ) then {
rdposition()
c = "\n"
# Repeat check for ESCCHAR next time around
yyline -:= 1
yyvline -:= 1
# Line number is correct for next line
}
} # \n
"*":
    {
if( c == ")" ) then
    {
cmtnest -:= 1
}
} # *
    "(":
    {
if( c == "*" ) then
    {
cmtnest +:= 1
c:= getchr()
}
} #
"$":
    {
if (c == "$") then
    {
c := getchr()
case ( c ) of {
"+": {
yydebug +:= 1
}
"-": {
if (yydebug) then {
yydebug -:= 1
}
}
}  # case c
} # c ==
} # $
} # case
    scansavc := c
c := getchr()
} # while
