Allow empty parameter list.
Fix a bug that the root objects were not GCed.

Because of an off-by-one error, the objects pointed by the bottom
frame were not properly GCed.
Fix a bug that the macro was not expanded.