anchor.diff:                   solve env (solve_prob orig None sol wl)
   
             | _ ->
  -            giveup_or_defer env orig wl "flex-flex: non-patterns"
  +            giveup_or_defer env orig wl (Thunk.mkv "flex-flex: non-patterns")
   
   and solve_t' (env:Env.env) (problem:tprob) (wl:worklist) : solution =
       def_check_prob "solve_t'.1" (TProb problem);
  
positive.code:                             (Print.tag_of_term t1) (Print.tag_of_term t2)
                              (Print.term_to_string t1) (Print.term_to_string t2)) t1.pos
  
        | _ -> giveup env "head tag mismatch" orig
  
  and solve_c (env:Env.env) (problem:problem<comp>) (wl:worklist) : solution =
      let c1 = problem.lhs in
  
negative.code:         || (tp.relation = EQ && rank <> Flex_flex)
          then solve_t env tp probs
          else if probs.defer_ok
          then solve env (defer_lit "deferring flex_rigid or flex_flex subtyping" hd probs)
          else if rank=Flex_flex
          then solve_t env ({tp with relation=EQ}) probs //turn flex_flex subtyping into flex_flex eq
          else solve_rigid_flex_or_flex_rigid_subtyping rank env tp probs
  