transFlags(flags));
sflags);
    protected void parseMethod() {        int flags = in.nextChar();        int sflags = transFlags(flags);        if ((flags & 0x0040) != 0)        	sflags |= Modifiers.BRIDGE;        Name name = (Name)pool.readPool(in.nextChar());        Type type = readType(in.nextChar());        if (CONSTR_N.equals(name)) {            Symbol s = TermSymbol.newConstructor(c, transFlags(flags));            // kick out package visible or private constructors            if (((flags & 0x0002) != 0) ||                ((flags & 0x0007) == 0)) {                attrib.readAttributes(s, type, METH_ATTR);                return;            }            switch (type) {		case MethodType(Symbol[] vparams, _):		    type = Type.MethodType(vparams, ctype);		    break;		default:		    throw new ApplicationError();            }            Symbol constr = c.primaryConstructor();            if (constr.isInitialized())                constr = c.addConstructor();            s.copyTo(constr);            setParamOwners(type, constr);            constr.setFirstInfo(type);            attrib.readAttributes(constr, type, METH_ATTR);            //System.out.println(c + " " + c.allConstructors() + ":" + c.allConstructors().info());//debug            //System.out.println("-- enter " + s);        } else {            Symbol s = new TermSymbol(                Position.NOPOS, name,                ((flags & 0x0008) != 0) ? c.module().moduleClass() : c,                transFlags(flags));            setParamOwners(type, s);            s.setFirstInfo(type);            attrib.readAttributes(s, type, METH_ATTR);            if ((s.flags & Modifiers.BRIDGE) == 0)                ((flags & 0x0008) != 0 ? statics : locals).enterOrOverload(s);        }    }