anchor.diff:          parse_type(Type, Module, ParseState)
       catch
           unkown_type ->
  -            ct:pal("~p:~p: failed to parse  ~p", [Module, Info, Type]),
  +            ct:pal("~p:~p: failed to parse type ~p", [Module, Info, Type]),
  +            exit(foobar)
  +        error:Reason ->
  +            ct:pal("~p:~p: failed to parse type ~p (error:~p)", [Module, Info, Type, Reason]),
               exit(foobar)
       end.
   
  
positive.code:                 {ok, {Module, [{abstract_code, {_AbstVersion, AbstractCode}}]}}
                      = beam_lib:chunks(ModuleFile, [abstract_code]),
                  lists:foldl(fun(Chunk, InnerParseState) ->
                                      parse_chunk(Chunk, Module, InnerParseState)
                              end, ParseState, AbstractCode)
          end,
      ParseState3 = case tester_parse_state:has_unknown_types(ParseState2) of
  
negative.code:                     {ok, {Module, [{abstract_code, {_AbstVersion, AbstractCode}}]}}
                      = beam_lib:chunks(FileName, [abstract_code]),
                      lists:foldl(fun (Chunk, InnerParseState) ->
                                          parse_chunk_log(Chunk, Module, InnerParseState)
                                  end, ParseState, AbstractCode)
              end
      end.
  
  -spec parse_chunk_log/3 :: (any(), module(), tester_parse_state:state()) ->
      tester_parse_state:state().
  parse_chunk_log(Type, Module, State) ->
      try
          parse_chunk(Type, Module, State)
      catch
          subst_error ->
              ct:pal("~p:~p: failed to substitute", [Module, Type]),
              exit(foobar);
          parse_error ->
              ct:pal("~p:~p: failed to parse chunk", [Module, Type]),
              exit(foobar)%;
          error:Reason ->
              ct:pal("~p:~p: failed to parse chunk (error:~p)", [Module, Type, Reason]),
              exit(foobar)
      end.
  
  -spec parse_chunk/3 :: (any(), module(), tester_parse_state:state()) ->
      tester_parse_state:state().
  