Commit Graph

51895 Commits

Author SHA1 Message Date
Manish Goregaokar
5954fce848 Improve concurrency chapter 2016-03-27 22:05:58 +05:30
bors
deee0f73da Auto merge of #32252 - durka:derive-21714, r=alexcrichton
derive: use discriminant_value in #[derive(Hash)]

derive: use discriminant_value in #[derive(Hash)]

Fixes #21714.

Spawned from #32139.

r? @alexcrichton
2016-03-27 06:13:53 -07:00
Tang Chenglong
708c5d09d7 Update macros.md 2016-03-27 17:59:33 +08:00
bors
abb3a107e4 Auto merge of #32521 - Manishearth:paramitem, r=eddyb
Doc fixes for ParameterEnvironment

r? @eddyb
2016-03-27 02:36:26 -07:00
NODA, Kai
7b69ad9158
Type macro is tracked at rust-lang/rust#27245, not 27336
Signed-off-by: NODA, Kai <nodakai@gmail.com>
2016-03-27 16:48:57 +08:00
Manish Goregaokar
a3fdf327e8 from_item is the old name 2016-03-27 12:31:35 +05:30
Manish Goregaokar
157ba0038d Clarify that ParameterEnvironment::for_item can take impl/trait items too 2016-03-27 12:31:34 +05:30
bors
a18e12494f Auto merge of #32510 - nodakai:libstd-sys-net-error-check, r=alexcrichton
libstd/sys/*/net: clean up API error checks.

1. Slightly improve `cvt_gai()` and `cvt()`.
2. Remove now redundant `cvt_r()`.
2016-03-26 23:00:00 -07:00
Alex Burka
1e67d8a570 deriving: factor out discriminant_value construction 2016-03-27 01:25:47 -04:00
Alex Burka
dd5972ee35 mk: add missing dep compiletest=>log 2016-03-27 01:25:47 -04:00
Alex Burka
b20e748ad8 mk: point target LD_LIBRARY_PATH at current stage 2016-03-27 01:25:46 -04:00
Alex Burka
c480b6a75d fix #21714 by using discriminant_value in #[derive(Hash)]
This is the same approach taken in #24270, except that this
should not be a breaking change because it only changes the output
of hash functions, which nobody should be relying on.
2016-03-27 01:25:46 -04:00
Alex Burka
01c0723ef2 add #[derive(Hash)] test for #21714 2016-03-27 01:25:46 -04:00
bors
68de28b309 Auto merge of #32513 - japaric:try-test, r=alexcrichton
add regression test for try!

Our widespread internal use of `try` was like a regression test. Now that most of `try!`s have been converted to `?`, lets add a proper regression test.

cc @bstrie
2016-03-26 19:46:24 -07:00
Ted Horst
2bfc47075a Set source file name when setting breakpoints in lldb 2016-03-26 21:40:13 -05:00
bors
d5a91e6958 Auto merge of #32432 - eddyb:dock-service, r=nikomatsakis
Flatten rustc and rustc_trans module hierarchy slightly.

The following moves were made, in the name of sanity/simplicity:
* `rustc::middle::{cfg, infer, traits, ty}` to `rustc::{cfg, infer, traits, ty}`
* `rustc::middle::subst` to `rustc::ty::subst`
* `rustc_trans::trans::*` to `rustc_trans::*`
* `rustc_trans::save` to `rustc_save_analysis` (cc @nrc)

I've rebased a larger WIP branch on top of this and the only conflicts were in imports, but YMMV.
2016-03-26 17:29:59 -07:00
Eduard Burtescu
035a645e64 rustc_trans: move the contents of the trans module to top-level. 2016-03-27 01:23:28 +02:00
mitaa
41916d8601 Drop cached sources to reduce memory usage 2016-03-27 00:21:01 +01:00
mitaa
8779e7baa4 Don't initialize id-map when rendering md files
Adding these "known" values to the table of used ids is only required
when embedding markdown into a rustdoc  html page and may yield
unexpected results when rendering a standalone `*.md` file.
2016-03-27 00:21:01 +01:00
mitaa
6a76872d71 Extend linkchecker with anchor checking
This adds checks to ensure that:
* link anchors refer to existing id's on the target page
* id's are unique within an html document
* page redirects are valid
2016-03-27 00:21:00 +01:00
mitaa
d0f74b6059 Load struct-variant data correctly from metadata 2016-03-27 00:21:00 +01:00
mitaa
0e3a2c0167 Linkify associated types and constants 2016-03-27 00:21:00 +01:00
mitaa
1bd8183c15 Don't hardcode item-type anchor ids
These should always correspond to the values in `ItemType::to_static_str`
2016-03-27 00:21:00 +01:00
mitaa
3e33ef4c42 Correct anchor for links to associated trait items 2016-03-27 00:20:55 +01:00
Eduard Burtescu
98359283a4 rustc_trans: move save to librustc_save_analysis. 2016-03-27 01:05:54 +02:00
Eduard Burtescu
5efdde0de1 rustc: move cfg, infer, traits and ty from middle to top-level. 2016-03-27 01:05:54 +02:00
Eduard Burtescu
5647586ed3 rustc: move middle::subst into middle::ty. 2016-03-27 01:05:53 +02:00
bors
97ec69fb95 Auto merge of #32325 - alexcrichton:panic-once, r=aturon
std: Rewrite Once with poisoning

This commit rewrites the `std::sync::Once` primitive with poisoning in mind in
light of #31688. Currently a panic in the initialization closure will cause
future initialization closures to run, but the purpose of a Once is usually to
initialize some global state so it's highly likely that the global state is
corrupt if a panic happened. The same strategy of a mutex is taken where a panic
is propagated by default.

A new API, `call_once_force`, was added to subvert panics like is available on
Mutex as well (for when panicking is handled internally).

Adding this support was a significant enough change to the implementation that
it was just completely rewritten from scratch, primarily to avoid using a
`StaticMutex` which needs to have `destroy()` called on it at some point (a pain
to do).

Closes #31688
2016-03-26 15:14:29 -07:00
NODA, Kai
bf94aefd5a libstd/sys/*/net: very minor clean up of cvt*() utility functions.
Signed-off-by: NODA, Kai <nodakai@gmail.com>
2016-03-27 05:19:10 +08:00
bors
13bfd5c0b7 Auto merge of #32240 - jseyfried:cleanup_resolve, r=nikomatsakis
Cleanup resolve

This is a collection of small refactorings and improvements in `resolve`, most of which could stand alone.
r? @nikomatsakis
2016-03-26 12:40:53 -07:00
Eduard Burtescu
221d0fbad0 syntax: Stop the bump loop for trait items at } and EOF. 2016-03-26 21:37:53 +02:00
Eduard Burtescu
6abab49029 syntax: Prevent bumping the parser EOF to stop infinite loops. 2016-03-26 21:03:49 +02:00
Jeffrey Seyfried
e011ae5ea9 Cleanup trait search 2016-03-26 18:23:57 +00:00
Jeffrey Seyfried
60a836fc93 Remove unnecessary pubs 2016-03-26 18:23:56 +00:00
Jeffrey Seyfried
227cc5cd26 Remove an if statement with an condition that is always false 2016-03-26 18:23:56 +00:00
Jeffrey Seyfried
3e7a22e3bc Remove outdated comment 2016-03-26 18:23:55 +00:00
Jeffrey Seyfried
4b6b506ef4 Improve the error message for paths with too many initial supers 2016-03-26 18:23:54 +00:00
Jeffrey Seyfried
8988c4538e Refactor away resolve_import_for_module 2016-03-26 18:23:53 +00:00
Jeffrey Seyfried
43dffc3294 Avoid passing around the current module as an argument in resolve_imports 2016-03-26 18:23:52 +00:00
Jeffrey Seyfried
bb09ae28c0 Refactor away resolve_name_in_lexical_scope and resolve_identifier_in_local_ribs. 2016-03-26 18:23:45 +00:00
Jeffrey Seyfried
73417853e4 Refactor out the common functionality of
`resolve_item_in_lexical_scope` and `resolve_identifier_in_local_ribs` into
a new function `resolve_ident_in_lexical_scope`.
2016-03-26 18:22:42 +00:00
Jeffrey Seyfried
07fecf8098 Replace uses of DefLike with Def (only the DlDef variant of DefLike was being used) 2016-03-26 18:22:41 +00:00
Jeffrey Seyfried
1744f55ad7 Refactor away GraphBuilder 2016-03-26 18:22:40 +00:00
Jeffrey Seyfried
0bed9aea2d Make populate_module_if_necessary a method of resolver 2016-03-26 18:22:37 +00:00
Jeffrey Seyfried
77f0f4a624 Avoid repeating parent 2016-03-26 18:22:34 +00:00
Jeffrey Seyfried
ff014a3a10 Refactor away populate_external_module 2016-03-26 18:22:33 +00:00
Jeffrey Seyfried
7bc6c75d0f Refactor away handle_external_def 2016-03-26 18:22:31 +00:00
Alex Crichton
c966c330c9 std: Rewrite Once with poisoning
This commit rewrites the `std::sync::Once` primitive with poisoning in mind in
light of #31688. Currently a panic in the initialization closure will cause
future initialization closures to run, but the purpose of a Once is usually to
initialize some global state so it's highly likely that the global state is
corrupt if a panic happened. The same strategy of a mutex is taken where a panic
is propagated by default.

A new API, `call_once_force`, was added to subvert panics like is available on
Mutex as well (for when panicking is handled internally).

Adding this support was a significant enough change to the implementation that
it was just completely rewritten from scratch, primarily to avoid using a
`StaticMutex` which needs to have `destroy()` called on it at some point (a pain
to do).

Closes #31688
2016-03-26 10:33:14 -07:00
bors
65bc9d7730 Auto merge of #32503 - dotdash:llvm_attrs, r=eddyb
Fix building on ARM
2016-03-26 10:25:03 -07:00
Jorge Aparicio
064ec35c18 add regression test for try! 2016-03-26 12:10:16 -05:00