anchor.diff:          throw:oops ->
               ok
       end,
  -    try
  -        erpc:call(Node, fun () -> erlang:throw(oops) end, Timeout),
  -        ct:fail(unexpected)
  -    catch
  -        throw:oops ->
  -            ok
  -    end,
  -    case {node() == Node, Timeout == infinity} of
  -        {true, true} ->
  -            %% This would kill the test since local calls
  -            %% without timeout is optimized to execute in
  -            %% calling process itself...
  -            ok;
  -        _ ->
  -            ExitSignal = fun () ->
  -                                 exit(self(), oops),
  -                                 receive after infinity -> ok end
  -                         end,
  -            try
  -                erpc:call(Node, ExitSignal, Timeout),
  +    if NodesOfSameRelease ->
  +            try
  +                erpc:call(Node, fun () -> erlang:throw(oops) end, Timeout),
                   ct:fail(unexpected)
               catch
  -                exit:{signal, oops} ->
  +                throw:oops ->
                       ok
               end,
  -            try
  -                erpc:call(Node, erlang, apply, [ExitSignal, []], Timeout),
  -                ct:fail(unexpected)
  -            catch
  -                exit:{signal, oops} ->
  -                    ok
  -            end
  +            case {node() == Node, Timeout == infinity} of
  +                {true, true} ->
  +                    %% This would kill the test since local calls
  +                    %% without timeout is optimized to execute in
  +                    %% calling process itself...
  +                    ok;
  +                _ ->
  +                    ExitSignal = fun () ->
  +                                         exit(self(), oops),
  +                                         receive after infinity -> ok end
  +                                 end,
  +                    try
  +                        erpc:call(Node, ExitSignal, Timeout),
  +                        ct:fail(unexpected)
  +                    catch
  +                        exit:{signal, oops} ->
  +                            ok
  +                    end,
  +                    try
  +                        erpc:call(Node, erlang, apply, [ExitSignal, []], Timeout),
  +                        ct:fail(unexpected)
  +                    catch
  +                        exit:{signal, oops} ->
  +                            ok
  +                    end
  +            end;
  +       true ->
  +            ok
       end,
       try
           erpc:call(Node, ?MODULE, call_func1, [boom], Timeout),
  
positive.code:      Node3Res,
       {ok, Node4},
       {ok, Node5},
       {ok, ThisNode},
       {ok, Node1},
       {error, {erpc, noconnection}},
       Node3Res,
       {ok, Node4},
       {ok, Node5}]
          = erpc:multicall(Nodes++Nodes, erlang, node, []),
  
      [{ok, ThisNode},
       {ok, Node1},
  
negative.code: 
  all() -> 
      [call,
       call_against_old_node,
       call_from_old_node,
       call_reqtmo,
       call_against_ei_node,
       cast,
  