Commit Graph

54618 Commits

Author SHA1 Message Date
cgswords
754759688b Preliminary implementation for TokenStreams and TokenSlices, including unit tests and associated operations. 2016-07-07 11:44:04 -07:00
bors
9c1783a3a0 Auto merge of #34658 - luqmana:34592-nested_returns, r=eddyb
Just pass in NodeId to FunctionContext::new instead of looking it up.

Fixes #34592.
2016-07-07 05:46:57 -07:00
bors
a7f5d8a2ef Auto merge of #34672 - luqmana:27021-reassign-match-body, r=eddyb
Make match discriminant reassignment check more accurate.

Fixes #27021.
2016-07-07 02:42:45 -07:00
bors
b4e11c2af8 Auto merge of #34655 - jseyfried:improve_resolver_api, r=nrc
Add to `resolve`'s public API

This adds a public method `with_module_lexical_scope` to `Resolver` to allow users to resolve a path in the lexical scope of an arbitrary module.
r? @nrc
2016-07-06 23:18:23 -07:00
bors
de78655bca Auto merge of #34652 - jseyfried:fix_expansion_perf, r=nrc
Fix expansion performance regression

**syntax-[breaking-change] cc #31645**

This fixes #34630 by reverting commit 5bf7970 of PR #33943, which landed in #34424.

By removing the `Rc<_>` wrapping around `Delimited` and `SequenceRepetition` in `TokenTree`, 5bf7970 made cloning `TokenTree`s more expensive. While this had no measurable performance impact on the compiler's crates, it caused an order of magnitude performance regression on some macro-heavy code in the wild. I believe this is due to clones of `TokenTree`s in `macro_parser.rs` and/or `macro_rules.rs`.

r? @nrc
2016-07-06 20:04:11 -07:00
bors
5c674a1147 Auto merge of #34695 - steveklabnik:rollup, r=steveklabnik
Rollup of 15 pull requests

- Successful merges: #33250, #33265, #34277, #34327, #34521, #34558, #34615, #34619, #34621, #34625, #34626, #34636, #34664, #34667, #34685
- Failed merges: #33951
2016-07-06 17:02:41 -07:00
Steve Klabnik
2262d7383a Rollup merge of #34685 - GuillaumeGomez:section_header, r=steveklabnik
Remove invalid CSS rule for doc titles

r? @steveklabnik

Before:

![issue](https://cloud.githubusercontent.com/assets/3050060/16625595/a2f65914-43a5-11e6-9ff2-bcdf11b68cc3.png)

After:

![fixed](https://cloud.githubusercontent.com/assets/3050060/16625602/a9b635ee-43a5-11e6-9f9d-853137eb4e6b.png)
2016-07-06 19:13:08 -04:00
Steve Klabnik
8c3efd20e4 Rollup merge of #34667 - KaivoAnastetiks:fix/crate-documentation, r=Manishearth
Add a section about crate documentation.

Fixes #34329
?r @steveklabnik
2016-07-06 19:13:08 -04:00
Steve Klabnik
f8905e1e01 Rollup merge of #34664 - alexcrichton:bump, r=brson
Bump version to 1.12.0

Beta's now in the forge, let's start working on 1.12.0!
2016-07-06 19:13:08 -04:00
Steve Klabnik
26821a6f88 Rollup merge of #34636 - tshepang:shorten, r=GuillaumeGomez
doc: fix and shorten comment
2016-07-06 19:13:08 -04:00
Steve Klabnik
1b7bebf84d Rollup merge of #34626 - sylvestre:master, r=Manishearth
Fix typos
2016-07-06 19:13:07 -04:00
Steve Klabnik
80e5672f7e Rollup merge of #34625 - jaredmanning:patch-1, r=apasel422
Fix spacing in for loop enumeration example

Add a space between the comma and j in (i, j) to make it look nice.

This addresses my recent issue #34624.

😀
2016-07-06 19:13:07 -04:00
Steve Klabnik
04130595cc Rollup merge of #34621 - KaivoAnastetiks:fix/#33924, r=steveklabnik
Clarifies the meaning of the external mutability.
2016-07-06 19:13:07 -04:00
Steve Klabnik
2acce41d18 Rollup merge of #34619 - frewsxcv:patch-30, r=apasel422
Fix broken markdown link in README.
2016-07-06 19:13:07 -04:00
Steve Klabnik
05806aed66 Rollup merge of #34615 - rdotdk:master, r=Manishearth
update cargo doc link

updated proper link of cargo doc that contains details about list of options available in semantic versioninig for the dependencies section in Cargo.toml
2016-07-06 19:13:07 -04:00
Steve Klabnik
92c0ab01b1 Rollup merge of #34558 - GlenDC:master, r=alexcrichton
rustbuild: propagate bootstrap.py '--help' flag

Fixes #34534.
r? @alexcrichton
2016-07-06 19:13:06 -04:00
Steve Klabnik
dfc7da4dc4 Rollup merge of #34521 - llogiq:doc-fixes, r=steveklabnik
extend+improve HIR types documentation
2016-07-06 19:13:06 -04:00
Steve Klabnik
affbbc3e45 Rollup merge of #34327 - nrc:save-fix-tuple, r=jseyfried
save-analysis: fix a bug with tuple sub-expressions
2016-07-06 19:13:06 -04:00
Steve Klabnik
62bae0ad42 Rollup merge of #34277 - ollie27:docs_num, r=steveklabnik
Add/improve num const docs

This adds short summaries to all num consts.

r? @steveklabnik
2016-07-06 19:13:06 -04:00
Steve Klabnik
eef10e6cfc Rollup merge of #33265 - tshepang:peek, r=steveklabnik
doc: some `peek` improvements
2016-07-06 19:13:05 -04:00
Steve Klabnik
155f0ec5c9 Rollup merge of #33250 - durka:patch-19, r=steveklabnik
update documentation of tuple/unit structs

I made the "tuple structs are useless" editorializing a bit weaker and moved it to the end. Feel free to overrule me on that.

I also added an example of how to unpack a tuple struct with dot notation, because it came up on IRC.

`braced_empty_structs` is stable now, so I updated the example for unit-like structs to use that syntax. Should we show both ways?

cc @ubsan
r? @steveklabnik or @GuillaumeGomez
2016-07-06 19:13:05 -04:00
bors
801d2682df Auto merge of #34689 - alexcrichton:fix-nightlies, r=alexcrichton
First attempt to fix nightlies

This is just https://github.com/rust-lang/rust/pull/34669 but I added some comments so it can land.
2016-07-06 14:05:35 -07:00
Alex Crichton
01c4b64b1c etc: Comment why we're binding xrange
Just mention there are differences between python versions
2016-07-06 11:17:26 -07:00
Alex Crichton
ab216a96aa Merge branch 'master' of https://github.com/dzamlo/rust into fix-nightlies 2016-07-06 11:16:33 -07:00
bors
34c9cddc89 Auto merge of #34654 - jseyfried:configure_multi_modified, r=nrc
Perform `cfg` attribute processing on `MultiModifier`-generated items

Fixes https://users.rust-lang.org/t/unused-attribute-warning-for-custom-derive-attribute/6180.
r? @nrc
2016-07-06 11:13:48 -07:00
ggomez
b467c003c6 Remove invalid CSS rule for doc titles 2016-07-06 18:12:24 +02:00
bors
4114b68eba Auto merge of #34648 - eddyb:return-in-peace-pls, r=nagisa
Revert "Revert "Remove the return_address intrinsic.""

This reverts commit f698cd3a36.

Made possible by the merge of servo/servo#11872, this closes #34227 for good.
2016-07-06 06:26:37 -07:00
bors
a120ae70d0 Auto merge of #34644 - infinity0:master, r=alexcrichton
Avoid redundant downloads when bootstrapping

If the local file is available, then verify it against the hash we just
downloaded, and if it matches then we don't need to download it again.
2016-07-06 03:30:47 -07:00
bors
47380768e7 Auto merge of #34546 - jseyfried:cfg_attr_path, r=nrc
Support `cfg_attr` on `path` attributes

Fixes #25544.
This is technically a [breaking-change]. For example, the following would break:
```rust
mod foo; // Suppose `foo.rs` existed in the appropriate location
```
2016-07-06 00:34:51 -07:00
Jeffrey Seyfried
ba59d42f24 Add regression test 2016-07-06 03:26:57 +00:00
bors
d1e5e3ab43 Auto merge of #34587 - ollie27:rustdoc_prim_titles, r=steveklabnik
rustdoc: Remove paths from primitive page <title> tags

Currently primitive pages have a title like "std::u8 - Rust" this changes
it to "u8 - Rust" as "std::u8" is the name of a module not a primitive
type.
2016-07-05 20:16:40 -07:00
Ximin Luo
933a1036ae Tweak verbosity to hopefully better match intuitive expectations 2016-07-06 00:44:31 +02:00
Jeffrey Seyfried
58dd06d9e5 Add FIXME comment 2016-07-05 22:38:41 +00:00
Ximin Luo
912a9d0ad8 Have verify() return a bool rather than a generic RuntimeError 2016-07-06 00:07:26 +02:00
Luqman Aden
a9c7a41576 Make match discriminant reassignment check more accurate. 2016-07-05 17:27:06 -04:00
bors
731d375619 Auto merge of #34294 - alexandermerritt:book-nuls, r=steveklabnik
Correct use of 'nul' 'null' and capitalization in the book

r? @steveklabnik
2016-07-05 14:25:07 -07:00
Loïc Damien
51e89ab08b Use lazy range in gdb pretty printers 2016-07-05 19:57:44 +02:00
Alex Burka
74e96299a2 show both forms of empty struct declaration 2016-07-05 13:46:06 -04:00
Kaivo Anastetiks
159d1ab540 Add a section about crate documentation. 2016-07-05 13:17:16 -04:00
Alex Crichton
1d9284664f Bump version to 1.12.0
Beta's now in the forge, let's start working on 1.12.0!
2016-07-05 08:34:58 -07:00
bors
ec58d0c997 Auto merge of #34412 - gnzlbg:document_platform_intrinsics_generate, r=alexcrichton
Add x86 intrinsics for bit manipulation (BMI 1.0, BMI 2.0, and TBM).

This PR adds the LLVM x86 intrinsics for the bit manipulation instruction sets (BMI 1.0, BMI 2.0, and TBM).

The objective of this pull-request is to allow building a library that implements all the algorithms offered by those instruction sets, using compiler intrinsics for the targets that support them (by means of `target_feature`).

The target features added are:

- `bmi`: Bit Manipulation Instruction Set 1.0, available in Intel >= Haswell and AMD's >= Jaguar/Piledriver,
- `bmi2`: Bit Manipulation Instruction Set 2.0, available in Intel >= Haswell and AMD's >= Excavator,
- `tbm`: Trailing Bit Manipulation, available only in AMD's Piledriver (won't be available in newer CPUs).

The intrinsics added are:

- BMI 1.0:
  - `bextr`: Bit field extract (with register).
- BMI 2.0:
  - `bzhi`: Zero high bits starting with specified bit position.
  - `pdep`: Parallel bits deposit.
  - `pext`: Parallel bits extract.
- TBM:
 - `bextri`: Bit field extract (with immediate).
2016-07-05 08:25:37 -07:00
Kaivo Anastetiks
6a85183e6f Replace it's by its. 2016-07-05 07:26:38 -04:00
bors
cd0ea60502 Auto merge of #34647 - TimNN:compiler-rt-ios-workaround, r=alexcrichton
Update compiler-rt with iOS linking warnings workaround

Closes #34617.

r? @alexcrichton
2016-07-05 04:06:50 -07:00
Jeffrey Seyfried
6e0bd44fa3 Add method with_module_lexical_scope to Resolver. 2016-07-05 08:50:43 +00:00
Luqman Aden
fd3b4646cc Just pass in NodeId to FunctionContext::new instead of looking it up. 2016-07-05 03:48:12 -04:00
Jeffrey Seyfried
bf4911b956 Add regression test 2016-07-05 05:59:46 +00:00
bors
499e6f8844 Auto merge of #34594 - willcrichton:master, r=nrc
Move LLVM cleanup so modules are accessible during `after_llvm` phase

Fix for #34432. Also added a new phase controller `after_compilation_done` that gets called at the very end (i.e. after linking) at the suggestion of @nrc. The added test will segfault if the modules get deallocated too early, so it ensures the LLVM is not prematurely cleaned up.

r? @nrc
2016-07-04 22:24:08 -07:00
bors
0f4c4f8c29 Auto merge of #34646 - michaelwoerister:warn-blacklisted-lldb, r=alexcrichton
Make rust-lldb warn about unsupported versions of LLDB

r? @alexcrichton
2016-07-04 17:59:14 -07:00
Jeffrey Seyfried
c454c1d4ac Strip unconfigured items from MultiModifier-expanded AST 2016-07-05 00:14:41 +00:00
Jeffrey Seyfried
547a930835 Revert "Change fold_tt and fold_tts to take token trees by value (instead of by reference)"
This reverts commit 5bf7970ac7.
2016-07-04 23:42:35 +00:00