Rename all files with the 'rc' extension
Add the `warnings` lint attribute
auto merge of #7371 : alexcrichton/rust/trying, r=cmr

This is an attempt at a smaller request than #7113, it's just the first two commits
resolve: report duplicate module definitions

add_child() is responsible for reporting errors about type, value, and
module duplicate definitions.  Although it checks for all three, it uses
namespace_to_str() to convert a Namespace value into a string before
printing an error like:

  error: duplicate definition of type `foo`
                                 ^^^^
  note: first definition of type foo here:
                            ^^^^

Unfortunately, this string can only be one of "type" or
"value" (corresponding to TypeNS and ValueNS respectively), and it
reports duplicate modules as duplicate types.

To alleviate the problem, define a special NamespaceError enum to define
more specialized errors, and use it instead of attempting to reuse the
Namespace enum.

Reported-by: Corey Richardson <corey@octayn.net>
Signed-off-by: Ramkumar Ramachandra <artagnon@gmail.com>
resolve: make error message strings more consistent

The "first definition of ..." error string reported by add_child() looks
different from similar messages reported by other functions.  Fix this.

Signed-off-by: Ramkumar Ramachandra <artagnon@gmail.com>
auto merge of #7325 : artagnon/rust/resolve-module, r=cmr

Fix #7322.

I started out with a band-aid approach to special-case the duplicate module error using `is_duplicate_module`, but thought this would be better in the long term.
remove the redundant `each` method from OptVec
container: remove internal iterators from Map

the maps are being migrated to external iterators
remove `each` from vec, HashMap and HashSet
xfail test hitting a codegen bug (issue #7385)
auto merge of #7373 : thestinger/rust/iterator, r=huonw
Work-around 'static bound requirement in io::with_bytes_reader (note: does not fix #5723, interface still unsafe)
Infer default static/Owned bounds for unbounded heap fns/traits (#7264)
Looser restrictions on what can be captured in unbounded traits.
Make closure contents call out to trait_contents.
Looser restrictions on what can be captured in unbounded heap closures.
Change expected error message in kindchk compile-fail tests.
Fix pretty-printing for bounded closures. Close #7333.
Add a run-pass test for existential traits in ARCs.