@@ -270,7 +270,9 @@ class Printer {
var fstr = printField(f);
tabs + fstr + switch(f.kind) {
case FVar(_, _), FProp(_, _, _, _): ";";
- case FFun(func) if (func.expr == null): ";";
+ case FFun({expr:null}): ";";
+ case FFun({expr:{expr:EBlock(_)}}): "";
+ case FFun(_): ";";
case _: "";
};
}].join("\n")
@@ -0,0 +1,17 @@
+package unit.issues;
+
+class Issue3205 extends Test {
+ function test() {
+ var td = macro class X {
+ public function test1() return 1;
+ public function test2() {
+ return 1;
+ }
+ function test3();
+ var printer = new haxe.macro.Printer();
+ var s = printer.printTypeDefinition(td);
+ s = ~/[\t\n\r]/g.replace(s, "");
+ eq("class X {public function test1() return 1;public function test2() {return 1;}function test3();}", s);
+}