public PrimitiveType getPrimitiveType(PrimitiveType.Kind kind) {
        Type prim = null;
        switch (kind) {
        case BOOLEAN:   prim = env.symtab.booleanType;  break;
        case BYTE:      prim = env.symtab.byteType;     break;
        case SHORT:     prim = env.symtab.shortType;    break;
        case INT:       prim = env.symtab.intType;      break;
        case LONG:      prim = env.symtab.longType;     break;
        case CHAR:      prim = env.symtab.charType;     break;
        case FLOAT:     prim = env.symtab.floatType;    break;
        case DOUBLE:    prim = env.symtab.doubleType;   break;
        default:        assert false;
        }
        return (PrimitiveType) env.typeMaker.getType(prim);
    }