anchor.diff:  literal_value({_TokenType, _Line, Value}) -> Value.
   
   absolutify_names(Defs) ->
  +    %% FIXME: Search for {package, ...} in Defs,
  +    %%        use that as initial Path instead of ['.'] ?
  +    %%        Control this behaviour by an option?
       abs_names_2(['.'], Defs).
   
   abs_names_2(Path, Elems) ->
  
positive.code:         lists:sort(reformat_names(flatten_defs(absolutify_names(Elems)))).
  
  resolve_refs_test() ->
      {ok, Elems} = parse_lines(["message m1 {"
                                 "  message m2 { required uint32 x = 1; }",
                                 "  enum    e1 { a = 17; }",
                                 "  required m2     y = 1;",
  
negative.code:         lists:sort(
            resolve_refs(reformat_names(flatten_defs(absolutify_names(Elems))))).
  
  fetches_imports_test() ->
      {ok, Elems} = parse_lines(["package p1;"
                                 "import \"a/b/c.proto\";",
                                 "import 'd/e/f.proto';",
                                 "message m1 { required uint32 x = 1; }",
                                 "enum    e1 { a = 17; }"]),
      ["a/b/c.proto", "d/e/f.proto"] = fetch_imports(Elems).
  
  %% helper
  parse_lines(Lines) ->
      {ok, Tokens, _} = gpb_scan:string(
  