@Override public void endVisit(SuperConstructorInvocation node) { Expression outerExpression = node.getExpression(); if (outerExpression == null) { return; } node.setExpression(null); ITypeBinding outerExpressionType = outerExpression.getTypeBinding(); GeneratedMethodBinding binding = new GeneratedMethodBinding(node.getMethodBinding().getMethodDeclaration()); node.setMethodBinding(binding); node.getArguments().add(0, outerExpression); binding.addParameter(0, outerExpressionType); }