One of the invariants of the method State.refine() is that if i is the initial state of a symbolic execution and f is the final state, then i.refine(f) can be the initial state of another symbolic execution that will end in a state equivalent to f. This currently does not work because refinement of clauses on pre-loading of classes is broken in the case the clause is pre_init(class), with the further constraint that class is not symbolically but concretely pre-loaded (e.g., when it has a pure class initializer). The refined state should re-run the class initializer, since its (concrete) Klass deriving from the refinement is in a zeroed state, but this is not done.
One of the invariants of the method State.refine() is that if i is the initial state of a symbolic execution and f is the final state, then i.refine(f) can be the initial state of another symbolic execution that will end in a state equivalent to f. This currently does not work because refinement of clauses on pre-loading of classes is broken in the case the clause is pre_init(class), with the further constraint that class is not symbolically but concretely pre-loaded (e.g., when it has a pure class initializer). The refined state should re-run the class initializer, since its (concrete) Klass deriving from the refinement is in a zeroed state, but this is not done.