final ParameterList parameterList = methodOrClass.getParameterLists().get(0);
final ProducedType type = gen.getReturnTypeOfCallable(typeModel);
CallableBuilder inner = new CallableBuilder(gen, type, parameterList);
inner.parameterTypes = inner.getParameterTypesFromCallableModel();//FromParameterModels();
inner.defaultValueCall = inner.new MemberReferenceDefaultValueCall(methodOrClass);
<BUG>CallBuilder callBuilder = CallBuilder.instance(gen);
ProducedType accessType = gen.getParameterTypeOfCallable(typeModel, 0);
if (methodOrClass instanceof Method) {
callBuilder.invoke(gen.naming.makeQualifiedName(gen.naming.makeUnquotedIdent(Unfix.$instance$), (Method)methodOrClass, Naming.NA_MEMBER));
</BUG>
if (!((TypedDeclaration)methodOrClass).isShared()) {

final ParameterList parameterList = methodOrClass.getParameterLists().get(0);
final ProducedType type = gen.getReturnTypeOfCallable(typeModel);
CallableBuilder inner = new CallableBuilder(gen, type, parameterList);
inner.parameterTypes = inner.getParameterTypesFromCallableModel();//FromParameterModels();
inner.defaultValueCall = inner.new MemberReferenceDefaultValueCall(methodOrClass);
CallBuilder callBuilder = CallBuilder.instance(gen);
ProducedType qualifyingType = qmte.getTarget().getQualifyingType();
ProducedType accessType = gen.getParameterTypeOfCallable(typeModel, 0);
JCExpression target = gen.naming.makeUnquotedIdent(Unfix.$instance$);
target = gen.expressionGen().applyErasureAndBoxing(target, producedReference.getQualifyingType(), true, BoxingStrategy.BOXED, qualifyingType);
if (methodOrClass instanceof Method) {
callBuilder.invoke(gen.naming.makeQualifiedName(target, (Method)methodOrClass, Naming.NA_MEMBER));
if (!((TypedDeclaration)methodOrClass).isShared()) {
