anchor.diff:  
   %% Raised during macros translation.
   
  +-spec syntax_error(non_neg_integer(), file:filename(), binary() | string()) -> no_return().
  +-spec syntax_error(non_neg_integer(), file:filename(), binary() | string(), list()) -> no_return().
  +
   syntax_error(Line, File, Message) when is_list(Message) ->
     syntax_error(Line, File, iolist_to_binary(Message));
   
  
positive.code:   raise(Line, File, 'Elixir.SyntaxError', Message).
  
  %% Raised during compilation
  
  form_error(Line, File, Module, Desc) ->
    Message = iolist_to_binary(format_error(Module, Desc)),
  
negative.code:   raise(Line, File, 'Elixir.SyntaxError', iolist_to_binary(Message)).
  
  %% Raised on tokenizing/parsing
  
  -spec parse_error(non_neg_integer(), file:filename(), iolist() | atom(), [] | iolist()) -> no_return().
  
  parse_error(Line, File, Error, []) ->
    Message = case Error of
  