   Raises an error.
 
   Calls `.exception` on the given argument passing
-  the args in order to retrieve the appropriate exception
+  the attributes in order to retrieve the appropriate exception
   structure.
 
   Any module defined via `defexception` automatically
-  implements `exception(args)` callback expected by `raise/2`.
+  implements `exception(attrs)` callback expected by `raise/2`.
 
   ## Examples
 

              end
          end

        Record.Deprecated.access(atom, fields, args, 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
          [h] -> quote do: Access.access(unquote(element), unquote(h))
          _   -> raise ArgumentError, message: "expected one argument in access"
        end

      end

  """
  defmacro use(module, opts \\ []) do
    expanded = Macro.expand(module, __CALLER__)

    case is_atom(expanded) do
