anchor.diff:  
   inner_check(Value, {list, InnerType}, ParseState) when is_list(Value) ->
       lists:all(fun (El) -> inner_check(El, InnerType, ParseState) end, Value);
  -inner_check(_Value, {typedef, tester, test_any}, ParseState) ->
  +inner_check(_Value, {typedef, tester, test_any}, _ParseState) ->
       true;
   inner_check(Value, {typedef, Module, TypeName}, ParseState) ->
       case tester_parse_state:lookup_type({type, Module, TypeName}, ParseState) of
  
positive.code:         {value, Type} ->
              inner_check(Value, Type, ParseState)
      end;
  inner_check(Value, {tuple, {typedef, tester, test_any}}, ParseState) when is_tuple(Value) ->
      true;
  inner_check(Value, {tuple, TupleType}, ParseState) when is_tuple(Value) ->
      case erlang:size(Value) =:= erlang:length(TupleType) of
  
negative.code: %-include("unittest.hrl").
  
  %-spec check/4 :: (module(), atom(), non_neg_integer(), non_neg_integer()) -> bool().
  check(true, {atom, true}, _ParseState) ->
      true;
  check(true, bool, _ParseState) ->
      true;
  check(Value, Type, ParseState) ->
      %ct:pal("inner_check(~w, ~w)", [Value, Type]),
  