static inline int handlehex()
{
- char l = (yytext[0]=='-');
+ char l = (yytext[0]=='-')+2;
if(yyleng-l>8)
syntaxerror("integer overflow");
if(!l && v>2147483647)
syntaxerror("unsigned integer overflow");
- if(l) {
+ if(l==3) {
return setint(-(int)v);
} else {
return setuint(v);
\. {c();return m('.');}
:: {c();return m(T_COLONCOLON);}
: {c();return m(':');}
+instanceof {c();return m(KW_INSTANCEOF);}
implements {c();return m(KW_IMPLEMENTS);}
interface {c();return m(KW_INTERFACE);}
namespace {c();return m(KW_NAMESPACE);}
protected {c();return m(KW_PROTECTED);}
undefined {c();return m(KW_UNDEFINED);}
+continue {c();return m(KW_CONTINUE);}
override {c();return m(KW_OVERRIDE);}
internal {c();return m(KW_INTERNAL);}
function {c();return m(KW_FUNCTION);}
final {c();return m(KW_FINAL);}
false {c();return m(KW_FALSE);}
break {c();return m(KW_BREAK);}
+super {c();return m(KW_SUPER);}
void {c();return m(KW_VOID);}
true {c();return m(KW_TRUE);}
null {c();return m(KW_NULL);}
is {c();return m(KW_IS) ;}
if {c();return m(KW_IF) ;}
as {c();return m(KW_AS);}
+do {c();return m(KW_DO);}
{NAME} {c();BEGIN(INITIAL);return mkid(T_IDENTIFIER);}
[+-\/*^~@$!%&\(=\[\]\{\}|?:;,<>] {c();BEGIN(REGEXPOK);return m(yytext[0]);}