anchor.diff:      {attribute,Line,record,{Name,Defs1}};
   form({attribute,Line,asm,{function,N,A,Code}}) ->
       {attribute,Line,asm,{function,N,A,Code}};
  +form({attribute,Line,type,{N,T,Vs}}) ->
  +    T1 = type(T),
  +    Vs1 = variable_list(Vs),
  +    {attribute,Line,type,{N,T1,Vs1}};
  +form({attribute,Line,opaque,{N,T,Vs}}) ->
  +    T1 = type(T),
  +    Vs1 = variable_list(Vs),
  +    {attribute,Line,opaque,{N,T1,Vs1}};
  +form({attribute,Line,spec,{{N,A},FTs}}) ->
  +    FTs1 = function_type_list(FTs),
  +    {attribute,Line,spec,{{N,A},FTs1}};
  +form({attribute,Line,spec,{{M,N,A},FTs}}) ->
  +    FTs1 = function_type_list(FTs),
  +    {attribute,Line,spec,{{M,N,A},FTs1}};
  +form({attribute,Line,callback,{{N,A},FTs}}) ->
  +    FTs1 = function_type_list(FTs),
  +    {attribute,Line,callback,{{N,A},FTs1}};
   form({attribute,Line,Attr,Val}) ->		%The general attribute.
       {attribute,Line,Attr,Val};
   form({function,Line,Name0,Arity0,Clauses0}) ->
       {Name,Arity,Clauses} = function(Name0, Arity0, Clauses0),
       {function,Line,Name,Arity,Clauses};
  -% Mnemosyne, ignore...
  -form({rule,Line,Name,Arity,Body}) ->
  -    {rule,Line,Name,Arity,Body}; % Dont dig into this
   %% Extra forms from the parser.
   form({error,E}) -> {error,E};
   form({warning,W}) -> {warning,W};
  
positive.code:     C1 = clause(C0),
      [C1|fun_clauses(Cs)];
  fun_clauses([]) -> [].
  
negative.code:     [{record_field,Line,{atom,La,A},Val1}|record_defs(Is)];
  record_defs([{record_field,Line,{atom,La,A}}|Is]) ->
      [{record_field,Line,{atom,La,A}}|record_defs(Is)];
  record_defs([{typed_record_field,{record_field,Line,{atom,La,A},Val0},Type}|
               Is]) ->
      Val1 = expr(Val0),
      Type1 = type(Type),
      [{typed_record_field,{record_field,Line,{atom,La,A},Val1},Type1}|
       record_defs(Is)];
  record_defs([{typed_record_field,{record_field,Line,{atom,La,A}},Type}|Is]) ->
      Type1 = type(Type),
      [{typed_record_field,{record_field,Line,{atom,La,A}},Type1}|
       record_defs(Is)];
  record_defs([]) -> [].
  
  %% -type function(atom(), integer(), [Clause]) -> {atom(),integer(),[Clause]}.
  