anchor.diff:      lfe_io:format1("multiple variable: ~w", [S]);
   format_error({redef_fun,F}) ->
       lfe_io:format1("redefining function: ~w", [F]);
  +format_error({bad_fdef,F}) ->
  +    lfe_io:format1("bad function definition: ~w", [F]);
   format_error(illegal_literal) -> "illegal literal";
   format_error(illegal_pattern) -> "illegal pattern";
   format_error(illegal_guard) -> "illegal guard";
  
positive.code: 
  check_attrs(As, L, St) ->
      check_foreach(fun (A, S) -> check_attr(A, L, S) end,
  		  fun (S) -> bad_mdef_error(L, form, S) end,
  		  St, As).
  
  check_attr([export,all], _, St) ->             %Pass 'all' along
      St#lint{exps=all};
  
negative.code: 
  check_gargs(Args, Env, L, St) ->
      check_foreach(fun (A, S) -> check_gexpr(A, Env, L, S) end,
                    fun (S) -> add_error(L, bad_gargs, S) end,
                    St, Args).
  
  check_gexprs(Es, Env, L, St) ->
      foldl(fun (E, S) -> check_gexpr(E, Env, L, S) end, St, Es).
  