Compile this code with -p:boo :
import System
interface ITest:
def M() as void
P as string:
get
event eh as EventHandler
abstract class TestClass:
abstract def M() as void:
pass
abstract P as string:
get:
pass
event eh as EventHandler
The output of BooPrinterVisitor is
public interface ITest:
public abstract def M() as System.Void:
pass
public abstract P as System.String:
public abstract get:
pass
public abstract event eh as System.EventHandler
[...]
This is invalid syntax for interfaces. Fixing this is important for the C# -> Boo converter.