I'm not sure how far your project has progressed so my suggestions may not be helpful.
First, if you need to hand-hack the output, maybe you should fix the original problems in your code generator. Is it possible you've missed something in your hand editting?
Second, keep your examples simple. I've TAed two compiler courses where we generated Java bytecode and seen the verifier die-like-flaming-rubble too many times. People (I'm not saying you) get into the habit of creating examples which are too large and wonder why they don't work - and the VM isn't very helpful. It might not hurt to build some sort of regression test suite that verifies your underlying assumption (i.e. these X language features compile properly).
Last, make sure there is some sort of return operation at the end of every method. This always kills people.
Good luck! PS: how are you mapping the unrestricted flexibility of pointers into the semantics of references? Do you make _everything_ an object in case it gets referred to indirectly?
I'm not sure how far your project has progressed so my suggestions may not be helpful.
First, if you need to hand-hack the output, maybe you should fix the original problems in your code generator. Is it possible you've missed something in your hand editting?
Second, keep your examples simple. I've TAed two compiler courses where we generated Java bytecode and seen the verifier die-like-flaming-rubble too many times. People (I'm not saying you) get into the habit of creating examples which are too large and wonder why they don't work - and the VM isn't very helpful. It might not hurt to build some sort of regression test suite that verifies your underlying assumption (i.e. these X language features compile properly).
Last, make sure there is some sort of return operation at the end of every method. This always kills people.
Good luck! PS: how are you mapping the unrestricted flexibility of pointers into the semantics of references? Do you make _everything_ an object in case it gets referred to indirectly?