               end
           end
 
-        Record.Deprecated.access(atom, fields, args, caller)
+        Record.Deprecated.access(atom, fields, attrs, caller)
       false ->
         case caller.in_match? or caller.in_guard? do
           true  -> raise ArgumentError, message: "dynamic access cannot be invoked inside match and guard clauses"
           false -> :ok
         end
 
-        case args do
+        case attrs do
           [h] -> quote do: Access.access(unquote(element), unquote(h))
           _   -> raise ArgumentError, message: "expected one argument in access"
         end

      2

  """
  defmacro access(element, args) when is_list(args) do
    caller = __CALLER__
    atom   = Macro.expand(element, caller)


      record_type message: String.t

      @doc false
      def exception(attrs), do: new(attrs)

      @doc false
      def exception(attrs, self), do: update(attrs, self)

      defoverridable exception: 1, exception: 2
      unquote(Keyword.get do_block, :do)
