Symbol sym = elem.symbol();
    protected Tree classInterface(ClassDef classDef) {        Template impl = classDef.impl;        Symbol ifaceSym = classDef.symbol();        // Create tree for interface.        List/*<Tree>*/ ifaceBody = new ArrayList();        Tree[] body = impl.body;        for (int i = 0; i < body.length; ++i) {            Tree elem = body[i];            if (elem.hasSymbol() && elem.symbol().owner() == ifaceSym) {                Symbol sym = elem.symbol();                if (memberGoesInInterface(elem.symbol()))                    ifaceBody.add(mkAbstract(elem));            }        }        Tree[] parentConstr =            gen.mkParentConstrs(impl.pos, ifaceSym.nextInfo().parents());        Template ifaceTmpl =            make.Template(impl.pos,                          parentConstr,                          (Tree[])ifaceBody.toArray(new Tree[ifaceBody.size()]));        ifaceTmpl.setSymbol(impl.symbol().cloneSymbol());        ifaceTmpl.setType(ifaceSym.nextInfo());        int ifaceMods = classDef.mods            | Modifiers.ABSTRACTCLASS            | Modifiers.INTERFACE            | Modifiers.STATIC;        ClassDef interfaceDef = (ClassDef)make.ClassDef(classDef.pos,                                                        ifaceMods,                                                        classDef.name,                                                        classDef.tparams,                                                        EMPTY_PARAMS,                                                        classDef.tpe,                                                        ifaceTmpl);        interfaceDef.setType(Type.NoType);        interfaceDef.setSymbol(ifaceSym);        createdIFaces.add(ifaceSym);        return interfaceDef;    }