anchor.diff:  let internal_pop () =
       let curstack = List.hd !fstar_options in
       match curstack with
  +    | [] -> failwith "impossible: empty current option stack"
       | [_] -> false
       | _::tl -> (fstar_options := tl :: List.tl !fstar_options; true)
   
  
positive.code:  *      (orig + A) (orig)
   *      (orig)
   *
   * No stack should ever be empty!
   *)
  let fstar_options : ref<list<list<optionstate>>> = Util.mk_ref []
  
  
negative.code: let set o =
      match !fstar_options with
      | [] -> failwith "set on empty option stack"
      | []::_ -> failwith "set on empty current option stack"
      | (_::tl)::os -> fstar_options := ((o::tl)::os)
  
  let snapshot () = Common.snapshot push fstar_options ()
  