public Type resolve(Scope s, int tag) {
        resolveExpr(test, s, tag);
        Type t = Indexer.idx.builtins.unknown;

        if (body != null) {
            t = resolveExpr(body, s, tag);
        }

        if (orelse != null) {
            t = UnionType.union(t, resolveExpr(orelse, s, tag));
        }

        return t;
    }