anchor.diff:      case sipparse_util:split_fields(HostPort, $:) of
   	{Host, Port} ->
   	    %% throw if not a IPv4 address string, or not a numeric port
  -	    {ok, is_IPv4address(Host), list_to_integer(Port)};
  +	    {ok, is_IPv4address_throw(Host), list_to_integer(Port)};
   	{Host} ->
   	    %% throw if not a IPv4 address string
  -	    {ok, is_IPv4address(Host), none}
  +	    {ok, is_IPv4address_throw(Host), none}
       end.
   
   
  
positive.code: %%--------------------------------------------------------------------
  %% Function: is_hostname(Str)
  %%           Str = string(), the host string
  %% Descrip.: parse host string, throw a exception if it doesn't
  %%           conform to the format specified in RFC3261 chapter 25.1
  %%           p218
  %% Returns : Str | throw()
  %% Note    : this function only matches symbolic hostnames
  %%
  %% These rules are the same:
  
negative.code:     io:format("test: str_to_float/1  - 3~n"),
      1.0 = str_to_float("0001.0000"),
      io:format("test: str_to_float/1  - 4~n"),
      fail(fun() -> str_to_float("foo") end),
  
      %% str_to_qval/1
      %%--------------------------------------------------------------------
  