Commit graph

54420 commits

Author SHA1 Message Date
Jeffrey Seyfried a8751e077f Rollup merge of #34547 - sanxiyn:pretty-lifetime, r=pnkfelix
Fix pretty-printing of lifetime bound

Fix #34527.
2016-06-30 07:39:32 +00:00
Jeffrey Seyfried bd7a3639a8 Rollup merge of #34512 - CensoredUsername:configure-fixes, r=alexcrichton
Support CMake installations in paths containing spaces

This solves #34490
2016-06-30 03:42:02 +00:00
Seo Sanghyeon 3c29fc5f6c Fix pretty-printing of lifetime bound 2016-06-29 23:40:29 +09:00
Jeffrey Seyfried a77a179637 Rollup merge of #34305 - Aaronepower:master, r=alexcrichton
Added Default trait for Cow.

Adds a default implementation for Cow. Which is the Owned's default.
2016-06-29 00:39:54 +00:00
Jeffrey Seyfried 2fda7d4a51 Rollup merge of #34105 - ollie27:rustdoc_derived, r=alexcrichton
rustdoc: Remove Derived Implementations title

As far as I know whether a trait was derived or not does not change the
public API so there is no need to include this information in the docs.

This title currently just adds an extra divide in the list of trait
implementations which I don't think needs to be there.
2016-06-29 00:33:30 +00:00
bors 366de839ae Auto merge of #34519 - alexcrichton:fix-nightlies, r=brson
Try to fix the nightlies

They look to be failing right after the CMake PR landed. I've diagnosed and confirmed the first issue fixed, the second is a bit of a shot in the dark to see if it fixes things.
2016-06-28 11:52:36 -07:00
bors 59152a45af Auto merge of #34525 - GuillaumeGomez:rollup, r=GuillaumeGomez
Rollup of 13 pull requests

- Successful merges: #34080, #34287, #34328, #34406, #34415, #34442, #34462, #34471, #34475, #34479, #34517, #34518, #34524
- Failed merges: #33951
2016-06-28 07:48:56 -07:00
Guillaume Gomez dd56a6ad08 Rollup merge of #34524 - frewsxcv:std-io-sink, r=GuillaumeGomez
Add doc example for `std::io::sink`.

None
2016-06-28 16:05:16 +02:00
Guillaume Gomez dcc8fa5270 Rollup merge of #34518 - frewsxcv:io-repeat, r=GuillaumeGomez
Add doc example for `std::io::repeat`.

None
2016-06-28 16:05:16 +02:00
Guillaume Gomez f47fcc738b Rollup merge of #34517 - frewsxcv:empty, r=GuillaumeGomez
Minor rewrite of `std::io::empty` doc example.

None
2016-06-28 16:05:16 +02:00
Guillaume Gomez 890e3a7a1a Rollup merge of #34479 - ollie27:rustdoc_renamed_reexport_list, r=GuillaumeGomez
rustdoc: Fix inlined renamed reexports in import lists

Fixes #34473
2016-06-28 16:05:15 +02:00
Guillaume Gomez f8453a1d17 Rollup merge of #34475 - frewsxcv:path-component, r=GuillaumeGomez
Expand `std::path::Component` documentation.

Indicate how it gets created and add an example.
2016-06-28 16:05:15 +02:00
Guillaume Gomez b34f6e7245 Rollup merge of #34471 - GuillaumeGomez:fix_expl, r=steveklabnik
Fix E0269 error explanation

r? @steveklabnik
2016-06-28 16:05:15 +02:00
Guillaume Gomez b765edf440 Rollup merge of #34462 - dns2utf8:leading_zeros, r=GuillaumeGomez
Add example with leading zeros

I was searching for this format very long. So I added an example to the prominent section.

I was thinking of putting the keyword leading in the corresponding section as well, what do you think?

r? @steveklabnik
2016-06-28 16:05:15 +02:00
Guillaume Gomez 86e4a034af Rollup merge of #34442 - tatsuya6502:doc-book-ownership, r=steveklabnik
[doc] Fix links in Ownership section of the book

- Add a missing link definition for `[i32]`.
- Like `[stack]` link is pointing to `...#the-stack`, append `#the-heap` to `[heap]` link.
2016-06-28 16:05:14 +02:00
Guillaume Gomez adc70bdc90 Rollup merge of #34415 - ollie27:docs_float, r=steveklabnik
Use the correct types in float examples

r? @steveklabnik
2016-06-28 16:05:14 +02:00
Guillaume Gomez 5d6b41f3bc Rollup merge of #34406 - frewsxcv:sleep-ex, r=alexcrichton
Add example for `std:🧵:sleep`.

None
2016-06-28 16:05:14 +02:00
Guillaume Gomez 47ef866f43 Rollup merge of #34328 - wuranbo:patch-1, r=steveklabnik
Traits where syntax's extra usage example more clearly

r? @steveklabnik
2016-06-28 16:05:13 +02:00
Guillaume Gomez be1c2b9c8c Rollup merge of #34287 - durka:patch-26, r=steveklabnik
update reference for #29734
2016-06-28 16:05:13 +02:00
Guillaume Gomez cea2438834 Rollup merge of #34080 - royalstream:royalstream-book-june4, r=steveklabnik
Syntax coloring and more compact diagram

Two cosmetic improvements:
- New content was added a few days ago to the **Closures** chapter but it was missing rust's syntax coloring.
- Also, in the **Crates and Modules** chapter, a diagram was improved to be more symmetric and to take less space.
2016-06-28 16:05:12 +02:00
Corey Farwell 325e09e952 Add doc example for std::io::sink. 2016-06-28 08:22:44 -04:00
Corey Farwell a350ca62cd Minor rewrite of std::io::empty doc example.
Remove unnecessary hidden `foo` function.
Demonstrate this emptiness of the resulting string.
Combine imports.
2016-06-27 22:28:28 -04:00
Alex Crichton 3fd411e017 mk: Make some LLVM building support more robust
* Implement the clean-llvm target for those cases where makefiles are being used
* Have all cross-compiled LLVMs depend on the **host** LLVM as they'll require
  the llvm-tablegen executable from there
2016-06-27 18:59:55 -07:00
Alex Crichton ea1818f1ca rustbuild: Update how compiler-rt is called
Looks like compiler-rt has been tweaked slightly during the last update,
propagate these changes to rustbuild as well.
2016-06-27 18:53:17 -07:00
Corey Farwell 18b094bdbd Add doc example for std::io::repeat. 2016-06-27 21:23:53 -04:00
bors ea0dc92972 Auto merge of #34424 - jseyfried:breaking_batch, r=Manishearth
Batch up libsyntax breaking changes

Batch of the following syntax-[breaking-change] changes:
 - #34213: Add a variant `Macro` to `TraitItemKind`
 - #34368: Merge the variant `QPath` of `PatKind` into the variant `PatKind::Path`
 - #34385: Move `syntax::ast::TokenTree` into a new module `syntax::tokenstream`
 - #33943:
  - Remove the type parameter from `visit::Visitor`
  - Remove `attr::WithAttrs` -- use `attr::HasAttrs` instead.
  - Change `fold_tt`/`fold_tts` to take token trees by value and avoid wrapping token trees in `Rc`.
  - Remove the field `ctxt` of `ast::Mac_`
  - Remove inherent method `attrs()` of types -- use the method `attrs` of `HasAttrs` instead.
 - #34316:
  - Remove `ast::Decl`/`ast::DeclKind` and add variants `Local` and `Item` to `StmtKind`.
  - Move the node id for statements from the `StmtKind` variants to a field of `Stmt` (making `Stmt` a struct instead of an alias for `Spanned<StmtKind>`)
  - Rename `ast::ExprKind::Again` to `Continue`.
 - #34339: Generalize and abstract `ThinAttributes` to `ThinVec<Attribute>`
  - Use `.into()` in convert between `Vec<Attribute>` and `ThinVec<Attribute>`
  - Use autoderef instead of `.as_attr_slice()`
 - #34436: Remove the optional expression from `ast::Block` and instead use a `StmtKind::Expr` at the end of the statement list.
 - #34403: Move errors into a separate crate (unlikely to cause breakage)
2016-06-27 16:42:03 -07:00
Jeffrey Seyfried 360dcae419 Update src/rustc/Cargo.lock 2016-06-27 23:40:04 +00:00
CensoredUsername 37f0f67682 Support CMake installations in paths containing spaces 2016-06-27 23:39:51 +02:00
Jeffrey Seyfried 542ba8c5f7 Fix Cargo.tomls 2016-06-27 18:30:46 +00:00
bors a0f572e98b Auto merge of #34169 - scottcarr:dominator-cache, r=nikomatsakis
[MIR] Add Dominators to MIR and Add Graph Algorithms

~~This PR assumes PR #34149 lands.~~

Add generic graph algorithms to rustc_data_structures.

Add dominators and successors to the ~~cache (that currently only holds predecessors).~~ `Mir`.
2016-06-27 11:12:25 -07:00
Corey Farwell a7b9e5441b Add example for std:🧵:sleep. 2016-06-27 13:06:20 -04:00
bors 126af085be Auto merge of #34477 - ollie27:patch-1, r=GuillaumeGomez
rustdoc: Fix search result layout for enum variants and struct fields

This was broken in #34234.

For example:
[before](https://doc.rust-lang.org/nightly/std/?search=cow%3A%3Aborrowed) [after](https://ollie27.github.io/rust_doc_test/std/?search=cow%3A%3Aborrowed)
[before](https://doc.rust-lang.org/nightly/std/?search=range%3A%3Astart) [after](https://ollie27.github.io/rust_doc_test/std/?search=range%3A%3Astart)

cc @GuillaumeGomez
2016-06-27 06:43:49 -07:00
bors f019e381fe Auto merge of #34453 - frewsxcv:regress, r=sanxiyn
Add regression test for #24424.

Fixes https://github.com/rust-lang/rust/issues/24424.
2016-06-27 01:10:49 -07:00
bors b42884fc64 Auto merge of #34419 - eddyb:virtually-inexistent, r=Aatch
Don't translate vtable methods with Self: Sized bounds.

Fixes #34416.
2016-06-26 22:24:03 -07:00
bors af2fe634bf Auto merge of #34491 - eddyb:return-in-peace, r=nagisa
Remove the return_address intrinsic.

This intrinsic to get the return pointer was introduced in #16248 / #16081 by @pcwalton for Servo.
However, as explained in #34227, it's impossible to ensure it's used correctly, and it broke with `-Zorbit`.

Servo's usage is being replaced in servo/servo#11872, and I expect nobody else to have abused it.
But I've also started a crater run, just in case this is a `[breaking-change]` for anyone else.
2016-06-26 19:02:12 -07:00
Corey Farwell f1d600c6f8 Expand std::path::Component documentation.
Indicate how it gets created and add an example.
2016-06-26 20:22:12 -04:00
Eduard Burtescu b30134dbc3 Remove the return_address intrinsic. 2016-06-27 01:47:28 +03:00
bors 3059bb9e38 Auto merge of #34450 - jseyfried:fix_include_path, r=nrc
Revert a change to the relative path for macro-expanded `include!`s

Fixes #34431 (c.f. discussion in that issue).
r? @nrc
2016-06-26 14:50:27 -07:00
bors 15e8a67c47 Auto merge of #34469 - frewsxcv:path-components, r=GuillaumeGomez
Indicate how the `std::path::Components` struct is created.

None
2016-06-25 22:06:35 -07:00
bors c12eb1d7a2 Auto merge of #34468 - frewsxcv:doc-links, r=GuillaumeGomez
Add hyperlinks to `std::fs` functions from `std::path`.

None
2016-06-25 19:24:29 -07:00
Jeffrey Seyfried 9bb3ea0feb Rollup merge of #34436 - jseyfried:no_block_expr, r=eddyb
To allow these braced macro invocation, this PR removes the optional expression from `ast::Block` and instead uses a `StmtKind::Expr` at the end of the statement list.

Currently, braced macro invocations in blocks can expand into statements (and items) except when they are last in a block, in which case they can only expand into expressions.

For example,
```rust
macro_rules! make_stmt {
    () => { let x = 0; }
}

fn f() {
    make_stmt! {} //< This is OK...
    let x = 0; //< ... unless this line is commented out.
}
```

Fixes #34418.
2016-06-26 02:20:14 +00:00
Jeffrey Seyfried 8eddf02800 Rollup merge of #34339 - jseyfried:thin_vec, r=petrochenkov,Manishearth
Generalize and abstract `ThinAttributes` to `ThinVec<Attribute>`.
2016-06-26 02:18:43 +00:00
Jeffrey Seyfried 8748cd92d0 Rollup merge of #34316 - jseyfried:refactor_ast_stmt, r=eddyb
Refactor away `ast::Decl`, refactor `ast::Stmt`, and rename `ast::ExprKind::Again` to `ast::ExprKind::Continue`.
2016-06-26 02:17:27 +00:00
Jeffrey Seyfried 33ea1e330c Rollup merge of #33943 - jseyfried:libsyntax_cleanup, r=nrc
Miscellaneous low priority cleanup in `libsyntax`.
2016-06-26 02:15:04 +00:00
Jeffrey Seyfried 82a15a6a0a Rollup merge of #34385 - cgswords:tstream, r=nrc
syntax-[breaking-change] cc #31645
(Only breaking because ast::TokenTree is now tokenstream::TokenTree.)

This pull request refactors TokenTrees into their own file as src/libsyntax/tokenstream.rs, moving them out of src/libsyntax/ast.rs, in order to prepare for an accompanying TokenStream implementation (per RFC 1566).
2016-06-26 02:11:59 +00:00
Oliver Middleton ec7da3dbd7 rustdoc: Fix inlined renamed reexports in import lists 2016-06-26 03:08:10 +01:00
bors 2cfd91d0ce Auto merge of #34465 - frewsxcv:builder-name-example, r=GuillaumeGomez
Add doc example for `std:🧵:Builder::name`.

None
2016-06-25 15:47:31 -07:00
Jeffrey Seyfried d3ae56d755 Rollup merge of #34403 - jonathandturner:move_liberror, r=alexcrichton
This PR refactors the 'errors' part of libsyntax into its own crate (librustc_errors).  This is the first part of a few refactorings to simplify error reporting and potentially support more output formats (like a standardized JSON output and possibly an --explain mode that can work with the user's code), though this PR stands on its own and doesn't assume further changes.

As part of separating out the errors crate, I have also refactored the code position portion of codemap into its own crate (libsyntax_pos).  While it's helpful to have the common code positions in a separate crate for the new errors crate, this may also enable further simplifications in the future.
2016-06-25 22:35:09 +00:00
Jeffrey Seyfried 4e2e31c118 Rollup merge of #34368 - petrochenkov:astqpath, r=Manishearth
The AST part of https://github.com/rust-lang/rust/pull/34365

plugin-[breaking-change] cc https://github.com/rust-lang/rust/issues/31645
2016-06-25 22:35:06 +00:00
Jeffrey Seyfried f0310e061b Rollup merge of #34213 - josephDunne:trait_item_macros, r=jseyfried
**syntax-[breaking-change]** cc #31645
New `TraitItemKind::Macro` variant

This change adds support for macro expansion inside trait items by adding the new `TraitItemKind::Macro` and associated parsing code.
2016-06-25 22:35:01 +00:00