anchor.diff:  		[{FA,L} || {function,L,F,A,_} <- Forms,
   			   not lists:member(FA = {F,A}, Specs)];
   	    exported ->
  -		Exps = gb_sets:to_list(St0#lint.exports) -- pseudolocals(),
  +		Exps0 = gb_sets:to_list(St0#lint.exports) -- pseudolocals(),
  +                Exps = Exps0 -- Specs,
   		[{FA,L} || {function,L,F,A,_} <- Forms,
  -			   member(FA = {F,A}, Exps -- Specs)]
  +			   member(FA = {F,A}, Exps)]
   	end,
       foldl(fun ({FA,L}, St) ->
   		  add_warning(L, {missing_spec,FA}, St)
  
positive.code:         true -> add_error(Line, {redefine_record,Name}, St0);
          false ->
              {Fs1,St1} = def_fields(normalise_fields(Fs0), Name, St0),
              St1#lint{records=dict:store(Name, {Line,Fs1}, St1#lint.records)}
      end.
  
  %% def_fields([RecDef], RecordName, State) -> {[DefField],State}.
  
negative.code: 	    RecNames = dict:fetch_keys(St0#lint.records),
  	    %% these are the records with field(s) containing type info
  	    TRecNames = [Name ||
  			    {attribute,_,record,{Name,Fields}} <- Forms,
  			    lists:all(fun ({typed_record_field,_,_}) -> true;
  					  (_) -> false
  				      end, Fields)],
  