anchor.diff:  			   mk_constraint(Var, sub, ArgV)]);
   get_bif_constr({erlang, is_record, 3}, Dst, [Var, Tag, Arity] = Args, State) ->
     %% TODO: Revise this to make it precise for Tag and Arity.
  -  Records = State#state.records,
     ArgFun =
       fun(Map) ->
   	case t_is_any_atom(true, lookup_type(Dst, Map)) of
  
positive.code: 	    true ->
                %% Check if a record is constructed.
                Arity = length(Fields),
                Records = State2#state.records,
                case lookup_record(Records, cerl:atom_val(Tag), Arity) of
                  error -> {State2, TupleType};
                  {ok, RecType} ->
                    State3 = state__store_conj(TupleType, sub, RecType, State2),
                    {State3, TupleType}
                end;
  	    false -> {State2, TupleType}
            end;
  
negative.code: 		plt                      :: dialyzer_plt:plt()
                                            | 'undefined',
  		prop_types  = dict:new() :: prop_types(),
                  mod_records = []         :: [{module(), types()}],
  		scc         = []         :: ordsets:ordset(type_var()),
  		mfas                     :: [mfa()],
                  solvers     = []         :: [solver()]
  