diff --git a/hscript/Parser.hx b/hscript/Parser.hx index 2f63bbf..3ea9e38 100644 --- a/hscript/Parser.hx +++ b/hscript/Parser.hx @@ -434,7 +434,9 @@ class Parser { #end return switch( id ) { case "if": + ensure(TPOpen); var cond = parseExpr(); + ensure(TPClose); var e1 = parseExpr(); var e2 = null; var semic = false; diff --git a/hscript/Printer.hx b/hscript/Printer.hx index 7ae3d33..6189eda 100644 --- a/hscript/Printer.hx +++ b/hscript/Printer.hx @@ -64,12 +64,12 @@ class Printer { } } - function expr( e : Expr) { + function expr( e : Expr ) { if( e == null ) { add("??NULL??"); return; } - switch( e ) { + switch( #if hscriptPos e.e #else e #end ) { case EConst(c): switch( c ) { case CInt(i): add(i); @@ -119,7 +119,7 @@ class Printer { case ECall(e, args): if( e == null ) expr(e); - else switch( e ) { + else switch( #if hscriptPos e.e #else e #end ) { case EField(_), EIdent(_), EConst(_): expr(e); default: