(noindent)
| 170 | warning("Unreachable '{a}' after '{b}'.",t,t.value,s);break;} |
| 171 | i+=1;}} |
| 172 | function statement(noindent){var i=indent,r,s=scope,t=nexttoken;if(t.id===';'){warning("Unnecessary semicolon.",t);advance(';');return;} |
| 173 | if(t.identifier&&!t.reserved&&peek().id===':'){advance();advance(':');scope=Object.beget(s);addlabel(t.value,'label');if(!nexttoken.labelled){warning("Label '{a}' on {b} statement.",nexttoken,t.value,nexttoken.value);} |
| 174 | if(jx.test(t.value+':')){warning("Label '{a}' looks like a javascript url.",t,t.value);} |
| 175 | nexttoken.label=t.value;t=nexttoken;} |
| 176 | if(!noindent){indentation();} |
| 177 | r=parse(0,true);if(!t.block){if(nexttoken.id!==';'){warningAt("Missing semicolon.",token.line,token.from+token.value.length);}else{adjacent(token,nexttoken);advance(';');nonadjacent(token,nexttoken);}} |
| 178 | indent=i;scope=s;return r;} |
| 179 | function statements(begin){var a=[];if(begin){if(option.adsafe&&nexttoken.type!=='(string)'){warning('ADsafe violation: Missing "use strict" statement.',nexttoken);} |
| 180 | if(nexttoken.type==='(string)'&&nexttoken.value.slice(0,10)==='use strict'){advance();advance(';');}} |
| 181 | if(option.adsafe){switch(begin){case'script':if(!adsafe_may){if(nexttoken.value!=='ADSAFE'||peek(0).id!=='.'||(peek(1).value!=='id'&&peek(1).value!=='go')){error('ADsafe violation: Missing ADSAFE.id or ADSAFE.go.',nexttoken);}} |
no test coverage detected