Alex Crichton
6df57ec2e2
Remove the io::Decorator trait
...
This is just an unnecessary trait that no one's ever going to parameterize over
and it's more useful to just define the methods directly on the types
themselves. The implementors of this type almost always don't want
inner_mut_ref() but they're forced to define it as well.
2014-01-08 23:42:28 -08:00
bors
430652c970
auto merge of #11370 : alexcrichton/rust/issue-10465, r=pwalton
...
Turned out to be a 2-line fix, but the compiler fallout was huge.
2014-01-08 10:06:45 -08:00
bors
464d1d044e
auto merge of #11405 : huonw/rust/moredocs, r=huonw
...
Various documentation changes, change the 'borrowed pointer' terminology to 'reference', fix a problem with 'make dist' on windows.
2014-01-08 07:26:41 -08:00
bors
9da4eac91f
auto merge of #11391 : alexcrichton/rust/rustdoc-inline, r=brson
...
If a reexport comes from a non-public module, then the documentation for the
reexport will be inlined into the module that exports it, but if the reexport is
targeted at a public type (like the prelude), then it is not inlined but rather
hyperlinked.
2014-01-08 00:56:35 -08:00
Alex Crichton
c4d36b85a0
Fix remaining cases of leaking imports
2014-01-07 23:51:38 -08:00
Alex Crichton
5350ee740e
rustc: De-indent portions of middle::resolve
...
It's a little prettier to look at now
2014-01-07 23:51:37 -08:00
Alex Crichton
e4804acaca
Fix leaking trait imports across modules
...
Turns out the pass in resolve was a little too eager to travel back up the
hierarchy chain when looking for trait candidates.
Closes #10465
2014-01-07 23:51:37 -08:00
Brian Anderson
d323632669
'borrowed pointer' -> 'reference'
2014-01-07 18:49:13 -08:00
Alex Crichton
3425901d93
Inline reexports in rustdoc
...
If a reexport comes from a non-public module, then the documentation for the
reexport will be inlined into the module that exports it, but if the reexport is
targeted at a public type (like the prelude), then it is not inlined but rather
hyperlinked.
2014-01-07 18:46:16 -08:00
Patrick Walton
5e637a890c
librustc: Move block contexts into per-function arenas, and
...
stack-allocate function contexts.
2014-01-07 17:00:47 -08:00
Raphael Catolino
1812a7b540
Remove unnecessary substitution of type params when generating
...
vtable methods before translating the ref to the method itself.
2014-01-08 00:56:16 +01:00
Marvin Löbel
90b394514d
Renamed Option::map_default and mutate_default to map_or and mutate_or_set
2014-01-08 00:53:40 +01:00
bors
bc395bc71e
auto merge of #11329 : fhahn/rust/unused-cast-lint2, r=alexcrichton
...
Updates as mentioned in #11135
2014-01-07 01:51:39 -08:00
Florian Hahn
6be2bc817b
Add lint for unnecessary casts
2014-01-06 21:28:49 +01:00
bors
8b71b6415d
auto merge of #11333 : cmr/rust/triage2, r=alexcrichton
2014-01-06 08:41:45 -08:00
Eduard Burtescu
3119d18e55
Disowned the Visitor.
2014-01-06 14:00:46 +02:00
Corey Richardson
ccaf0b4654
Remove a fixme
...
pcwalton says this is right, and it looks right to me too.
Closes #4731
2014-01-05 21:36:53 -05:00
Brian Anderson
2d8fbba57d
rustc: Add error about obsolete struct deref
2014-01-04 14:44:14 -08:00
Brian Anderson
3b1862a82f
Don't allow newtype structs to be dereferenced. #6246
2014-01-04 14:44:12 -08:00
Brian Anderson
18cef3fad4
Don't allow single-variant enums to be dereferenced. #6246
...
I'm not sure if this was even intentional at this point.
2014-01-04 13:17:31 -08:00
bors
3dd7c49faf
auto merge of #11251 : pcwalton/rust/remove-at-mut, r=pcwalton
...
r? @nikomatsakis
for the borrow checker changes. Write guards are now eliminated.
2014-01-03 22:36:53 -08:00
Patrick Walton
82a09b9a04
librustc: Remove @mut
support from the parser
2014-01-03 14:02:01 -08:00
Patrick Walton
88281290ff
librustc: Remove @mut
support from the typechecker and borrow checker
2014-01-03 14:02:01 -08:00
Patrick Walton
449ebeea08
librustc: De-@mut
the AST map
2014-01-03 14:01:58 -08:00
Patrick Walton
497b63ddf0
librustc: De-@mut
all writers
2014-01-03 14:01:58 -08:00
Patrick Walton
b26018cc89
librustc: De-@mut
(and de-@
) the pretty printer
2014-01-03 14:01:58 -08:00
Patrick Walton
4d66af2698
librustc: De-@mut
the span handler
2014-01-03 14:01:57 -08:00
Patrick Walton
3aa19a6b86
librustc: De-@mut
the parse session
2014-01-03 14:01:56 -08:00
bors
d3ae3a27c4
auto merge of #11264 : am0d/rust/crate_type_lint, r=alexcrichton
...
This ensures that the `crate_type` attribute always contains a value,
and does not contain an invalid value.
Fixes #11256 .
2014-01-03 13:31:58 -08:00
bors
08321f1c49
auto merge of #11149 : alexcrichton/rust/remove-either, r=brson
...
Had to change some stuff in typeck to bootstrap (getting methods in fmt off of Either), but other than that not so painful.
Closes #9157
2014-01-03 12:16:48 -08:00
Alex Crichton
4bea679dbe
Remove std::either
2014-01-03 10:25:23 -08:00
bors
0df9b850ac
auto merge of #10696 : fhahn/rust/issue9543-remove-extern-mod-foo, r=pcwalton
...
This patch for #9543 throws an `obsolete syntax` error for `extern mod foo (name="bar")` .
I was wondering if [this](https://github.com/fhahn/rust/compare/mozilla:master...fhahn:issue9543-remove-extern-mod-foo?expand=1#diff-da9d34ca1d0f6beee2838cf02e07345cR4444 ) is the correct place to do this?
I think the wording of the error message could probably be improved as well.
If this approach is OK, I'm going to run the whole test suite tomorrow and update the old syntax to the new one.
2014-01-02 11:32:09 -08:00
bors
3249de8c4f
auto merge of #11274 : michaelwoerister/rust/issue11083, r=pcwalton
...
This pull request fixes #11083 . The problem was that recursive type definitions were not properly handled for enum types, leading to problems with LLVM's metadata "uniquing". This bug has already been fixed for struct types some time ago (#9658 ) but I seem to have forgotten about enums back then. I added the offending code from issue #11083 as a test case.
2014-01-02 09:02:01 -08:00
Michael Woerister
6d20876c3f
debuginfo: Fix issue #11083 and some minor clean up.
2014-01-02 15:20:43 +01:00
bors
ff578b7c83
auto merge of #11269 : am0d/rust/lint_typo, r=sanxiyn
2014-01-02 03:32:02 -08:00
bors
bbdf645811
auto merge of #11268 : lkuper/rust/trans-comment, r=pcwalton
2014-01-02 02:11:48 -08:00
bors
8ba61514c9
auto merge of #11246 : ktt3ja/rust/issue-11224, r=alexcrichton
...
Close #11224
2014-01-01 22:12:11 -08:00
bors
a96951048c
auto merge of #11245 : alexcrichton/rust/issue-11225, r=pcwalton
...
Commit messages are a little more descriptive.
2014-01-01 20:56:54 -08:00
a_m0d
65baedfa1f
Fix typo in lint description.
2014-01-01 23:50:11 -05:00
Lindsey Kuper
99dbb1d51f
Fix comment that's been wrong since ancient times (thanks, @jvns).
2014-01-01 23:02:02 -05:00
bors
1b14a9393a
auto merge of #11242 : Dretch/rust/hashmap-key-value-iterators, r=pcwalton
2014-01-01 17:11:57 -08:00
a_m0d
8965e34789
Add linting for crate_type
attribute values.
...
This ensures that the `crate_type` attribute always contains a value,
and does not contain an invalid value.
2014-01-01 19:55:59 -05:00
Florian Hahn
f42a36cded
Remove extern mod foo (name="bar")
syntax, closes #9543
2014-01-01 23:36:57 +01:00
klutzy
9cdad685a3
syntax::codemap: Add static DUMMY_SP
...
It replaces `dummy_sp()`.
2014-01-01 19:51:35 +09:00
klutzy
fe10c63326
syntax::diagnostic: Remove unnecessary traits
...
This removes trait `handler` and `span_handler`,
and renames `HandlerT` to `Handler`, `CodemapT` to `SpanHandler`.
2014-01-01 19:10:43 +09:00
bors
e61937a6bf
auto merge of #11187 : alexcrichton/rust/once, r=brson
...
Rationale can be found in the first commit, but this is basically the same thing as `pthread_once`
2013-12-31 20:41:56 -08:00
Alex Crichton
c22fed9424
Convert relevant static mutexes to Once
2013-12-31 20:15:03 -08:00
Kiet Tran
576a85105f
Mark provided methods in dead-code pass
2013-12-31 16:19:57 -05:00
Alex Crichton
0daaeab244
Conservatively export all trait methods and impls
...
The comments have more information as to why this is done, but the basic idea is
that finding an exported trait is actually a fairly difficult problem. The true
answer lies in whether a trait is ever referenced from another exported method,
and right now this kind of analysis doesn't exist, so the conservative answer of
"yes" is always returned to answer whether a trait is exported.
Closes #11224
Closes #11225
2013-12-31 12:42:13 -08:00
Gareth Smith
d435f4f059
Fix issue #11216 - Replace std::hashmap::{each_key, each_value} with iterators.
2013-12-31 20:29:39 +00:00