anchor.diff:              end
       end.
   
  --ifdef(NAMESPACED_DICTS).
   -spec store_expect(Mod::atom(), meck_expect:func_ari(),
  -                   meck_expect:expect(), Expects::dict:dict()) ->
  -        {NewExpects::dict:dict(), CompilerPid::pid()}.
  --else.
  --spec store_expect(Mod::atom(), meck_expect:func_ari(),
  -                   meck_expect:expect(), Expects::dict()) ->
  -        {NewExpects::dict(), CompilerPid::pid()}.
  --endif.
  +                   meck_expect:expect(), Expects::meck_dict()) ->
  +        {NewExpects::meck_dict(), CompilerPid::pid()}.
   store_expect(Mod, FuncAri, Expect, Expects) ->
       NewExpects = dict:store(FuncAri, Expect, Expects),
       compile_expects(Mod, NewExpects).
   
  --ifdef(NAMESPACED_DICTS).
  --spec do_delete_expect(Mod::atom(), meck_expect:func_ari(), Expects::dict:dict()) ->
  -        {NewExpects::dict:dict(), CompilerPid::pid()}.
  --else.
  --spec do_delete_expect(Mod::atom(), meck_expect:func_ari(), Expects::dict()) ->
  -        {NewExpects::dict(), CompilerPid::pid()}.
  --endif.
  +-spec do_delete_expect(Mod::atom(), meck_expect:func_ari(), Expects::meck_dict()) ->
  +        {NewExpects::meck_dict(), CompilerPid::pid()}.
   do_delete_expect(Mod, FuncAri, Expects) ->
       NewExpects = dict:erase(FuncAri, Expects),
       compile_expects(Mod, NewExpects).
   
  --ifdef(NAMESPACED_DICTS).
  --spec compile_expects(Mod::atom(), Expects::dict:dict()) ->
  -        {NewExpects::dict:dict(), CompilerPid::pid()}.
  --else.
  --spec compile_expects(Mod::atom(), Expects::dict()) ->
  -        {NewExpects::dict(), CompilerPid::pid()}.
  --endif.
  +-spec compile_expects(Mod::atom(), Expects::meck_dict()) ->
  +        {NewExpects::meck_dict(), CompilerPid::pid()}.
   compile_expects(Mod, Expects) ->
       %% If the recompilation is made by the server that executes a module
       %% no module that is called from meck_code:compile_and_load_forms/2
  
positive.code:                 reload :: {Compiler::pid(), {From::pid(), Tag::any()}} |
                            undefined,
                  trackers = [] :: [tracker()]}).
  -else.
  -record(state, {mod :: atom(),
                  can_expect :: any | [{Mod::atom(), Ari::byte()}],
                  expects :: dict(),
                  valid = true :: boolean(),
                  history = [] :: meck_history:history() | undefined,
                  original :: term(),
                  was_sticky = false :: boolean(),
                  reload :: {Compiler::pid(), {From::pid(), Tag::any()}} |
                            undefined,
                  trackers = [] :: [tracker()]}).
  -endif.
  
  -record(tracker, {opt_func :: '_' | atom(),
                    args_matcher :: meck_args_matcher:args_matcher(),
  
negative.code:         _              -> Exports
      end.
  
  -spec init_expects(Exports::[meck_expect:func_ari()] | undefined,
                     Options::[proplists:property()]) ->
          meck_dict().
  init_expects(Exports, Options) ->
      Passthrough = proplists:get_bool(passthrough, Options),
      StubAll = proplists:is_defined(stub_all, Options),
  