@Override public void visitFunction(GoloFunction function) { if (function.isSynthetic()) { newContext(); declaredParameters(function.getParameterNames()); function.getBlock().internReferenceTable(); function.getBlock().accept(this); makeArguments(function, context().shouldBeArguments()); dropUnused(context().shouldBeRemoved()); dropContext(); } else { function.getBlock().accept(this); } }