]> git.lizzy.rs Git - rust.git/log
rust.git
9 years agoTRPL: Fix Unescaped URL
Pascal Hertleif [Thu, 28 May 2015 14:18:26 +0000 (16:18 +0200)]
TRPL: Fix Unescaped URL

9 years agoAuto merge of #25849 - reinh:patch-1, r=huonw
bors [Thu, 28 May 2015 11:24:38 +0000 (11:24 +0000)]
Auto merge of #25849 - reinh:patch-1, r=huonw

Thanks for the awesome book!

r? @steveklabnik

9 years agoAuto merge of #25843 - shepmaster:remove-public-int-and-uint, r=huonw
bors [Thu, 28 May 2015 09:20:49 +0000 (09:20 +0000)]
Auto merge of #25843 - shepmaster:remove-public-int-and-uint, r=huonw

9 years agoAuto merge of #25783 - nrc:save-api-2, r=@huonw
bors [Thu, 28 May 2015 06:54:57 +0000 (06:54 +0000)]
Auto merge of #25783 - nrc:save-api-2, r=@huonw

A little more work on the save-analysis API.

r? @huonw

9 years agoTRPL: fix typo, borow for borrow
Rein Henrichs [Thu, 28 May 2015 05:35:46 +0000 (22:35 -0700)]
TRPL: fix typo, borow for borrow

9 years agosave-analysis: move another couple of things to the API
Nick Cameron [Mon, 25 May 2015 22:35:53 +0000 (10:35 +1200)]
save-analysis: move another couple of things to the API

9 years agoAuto merge of #25840 - arielb1:ptr-compare-fixes, r=nrc
bors [Thu, 28 May 2015 03:51:58 +0000 (03:51 +0000)]
Auto merge of #25840 - arielb1:ptr-compare-fixes, r=nrc

Fixes #25826.

9 years agoAuto merge of #25824 - alexcrichton:fix-deadlocking-test-on-windows, r=nikomatsakis
bors [Thu, 28 May 2015 02:17:48 +0000 (02:17 +0000)]
Auto merge of #25824 - alexcrichton:fix-deadlocking-test-on-windows, r=nikomatsakis

Windows tests can often deadlock if a child thread continues after the main
thread and then panics, and a `println!` executed in a child thread after the
main thread has exited is at risk of panicking.

9 years agoPrevent comparison and dereferencing of raw pointers in constexprs
Ariel Ben-Yehuda [Wed, 27 May 2015 21:35:56 +0000 (00:35 +0300)]
Prevent comparison and dereferencing of raw pointers in constexprs

Fixes #25826.

9 years agoAuto merge of #25805 - jooert:colorized_tests, r=alexcrichton
bors [Thu, 28 May 2015 00:15:47 +0000 (00:15 +0000)]
Auto merge of #25805 - jooert:colorized_tests, r=alexcrichton

The output of individual tests can be captured now so it's safe to use
colorized output even when running tests in parallel. Closes #782.

9 years agoRemove mentions of int / uint from public documentation
Jake Goulding [Wed, 27 May 2015 23:20:32 +0000 (19:20 -0400)]
Remove mentions of int / uint from public documentation

9 years agoRemove mentions of int / uint from the isize / usize docs
Jake Goulding [Wed, 27 May 2015 23:16:00 +0000 (19:16 -0400)]
Remove mentions of int / uint from the isize / usize docs

9 years agoAuto merge of #25796 - arielb1:default-assoc, r=eddyb
bors [Wed, 27 May 2015 22:05:09 +0000 (22:05 +0000)]
Auto merge of #25796 - arielb1:default-assoc, r=eddyb

r? @eddyb

Fixes #19476.

9 years agoAuto merge of #25827 - Manishearth:rollup, r=Manishearth
bors [Wed, 27 May 2015 19:42:48 +0000 (19:42 +0000)]
Auto merge of #25827 - Manishearth:rollup, r=Manishearth

- Successful merges: #25128, #25651, #25668, #25726, #25760, #25792, #25806, #25807
- Failed merges:

9 years agoRollup merge of #25807 - rillian:manpages, r=alexcrichton
Manish Goregaokar [Wed, 27 May 2015 16:38:54 +0000 (22:08 +0530)]
Rollup merge of #25807 - rillian:manpages, r=alexcrichton

Quick update to fix two manpage issues I noticed in #25689.

9 years agoRollup merge of #25806 - nrc:20184-msg, r=alexcrichton
Manish Goregaokar [Wed, 27 May 2015 16:38:54 +0000 (22:08 +0530)]
Rollup merge of #25806 - nrc:20184-msg, r=alexcrichton

Closes #20184

9 years agoRollup merge of #25792 - koobs:patch-1, r=alexcrichton
Manish Goregaokar [Wed, 27 May 2015 16:38:54 +0000 (22:08 +0530)]
Rollup merge of #25792 - koobs:patch-1, r=alexcrichton

Currently, there are two conditional blocks that exist to check for "clang or gcc"

On line 866:

```
if [ -z "$CFG_ENABLE_CLANG" -a -z "$CFG_GCC" ]
then
    err "either clang or gcc is required"
fi
```
and on line 1019:

```
if [ -z "$CC" -a -z "$CFG_ENABLE_CLANG" -a -z "$CFG_GCC" ]
then
    err "either clang or gcc is required"
fi
```

Given the order of the clauses, this results in the "either clang or gcc is required" error from the earlier block, (even) when CC is set.

The expected behaviour is to honour user-flags, in this case CC.

Aside from removing all hand-holdy compiler checks in favour of actual compiler *feature* checks, this change removes the redundant former block in favour of the latter block, which appears designed to allow the expected behaviour.

9 years agoRollup merge of #25726 - nham:cell_docs, r=alexcrichton
Manish Goregaokar [Wed, 27 May 2015 16:38:53 +0000 (22:08 +0530)]
Rollup merge of #25726 - nham:cell_docs, r=alexcrichton

Currently part of the description of the `into_inner` method of `UnsafeCell` seems backwards.

9 years agoRollup merge of #25668 - steveklabnik:doc_const, r=alexcrichton
Manish Goregaokar [Wed, 27 May 2015 16:38:53 +0000 (22:08 +0530)]
Rollup merge of #25668 - steveklabnik:doc_const, r=alexcrichton

9 years agoRollup merge of #25128 - steveklabnik:gh24816, r=alexcrichton
Manish Goregaokar [Wed, 27 May 2015 16:38:52 +0000 (22:08 +0530)]
Rollup merge of #25128 - steveklabnik:gh24816, r=alexcrichton

Fixes #24816

r? @alexcrichton

9 years agoAddress review comments
Ariel Ben-Yehuda [Wed, 27 May 2015 17:42:42 +0000 (20:42 +0300)]
Address review comments

9 years agotest fixes
Ariel Ben-Yehuda [Wed, 27 May 2015 17:31:56 +0000 (20:31 +0300)]
test fixes

9 years agoAuto merge of #25799 - alexcrichton:fix-link-in-mk, r=luqmana
bors [Wed, 27 May 2015 17:25:00 +0000 (17:25 +0000)]
Auto merge of #25799 - alexcrichton:fix-link-in-mk, r=luqmana

The changes scaled back in 4cc025d8 were a little too aggressive and broke a
bunch of cross compilations by not defining the `LINK_$(1)` variable for all
targets. This commit ensures that the variable is defined for all targets by
defaulting it to the normal compiler if it's not already defined (it's only
defined specially for MSVC).

Closes #25723
Closes #25802

9 years agotest: Join child threads on windows in tests
Alex Crichton [Wed, 27 May 2015 16:15:19 +0000 (09:15 -0700)]
test: Join child threads on windows in tests

Windows tests can often deadlock if a child thread continues after the main
thread and then panics, and a `println!` executed in a child thread after the
main thread has exited is at risk of panicking.

9 years agoAuto merge of #25797 - eddyb:const-trait-to-trait, r=luqmana
bors [Wed, 27 May 2015 12:37:56 +0000 (12:37 +0000)]
Auto merge of #25797 - eddyb:const-trait-to-trait, r=luqmana

Fixes #24644.

9 years agoAuto merge of #25762 - dotdash:codegen_test, r=alexcrichton
bors [Wed, 27 May 2015 10:21:11 +0000 (10:21 +0000)]
Auto merge of #25762 - dotdash:codegen_test, r=alexcrichton

The current codegen tests only compare IR line counts between similar
rust and C programs, the latter getting compiled with clang. That looked
like a good idea back then, but actually things like lifetime intrinsics
mean that less IR isn't always better, so the metric isn't really
helpful.

Instead, we can start doing tests that check specific aspects of the
generated IR, like attributes or metadata. To do that, we can use LLVM's
FileCheck tool which has a number of useful features for such tests.

To start off, I created some tests for a few things that were recently
added and/or broken.

9 years agoRevamp codegen tests to check IR quality instead of quantity
Björn Steinbrink [Sun, 24 May 2015 16:07:52 +0000 (18:07 +0200)]
Revamp codegen tests to check IR quality instead of quantity

The current codegen tests only compare IR line counts between similar
rust and C programs, the latter getting compiled with clang. That looked
like a good idea back then, but actually things like lifetime intrinsics
mean that less IR isn't always better, so the metric isn't really
helpful.

Instead, we can start doing tests that check specific aspects of the
generated IR, like attributes or metadata. To do that, we can use LLVM's
FileCheck tool which has a number of useful features for such tests.

To start off, I created some tests for a few things that were recently
added and/or broken.

9 years agoAuto merge of #25790 - eddyb:oh-snap-ctfe-arrived, r=alexcrichton
bors [Wed, 27 May 2015 08:47:53 +0000 (08:47 +0000)]
Auto merge of #25790 - eddyb:oh-snap-ctfe-arrived, r=alexcrichton

9 years agoUse `const fn` to abstract away the contents of UnsafeCell & friends.
Eduard Burtescu [Wed, 27 May 2015 08:18:36 +0000 (11:18 +0300)]
Use `const fn` to abstract away the contents of UnsafeCell & friends.

9 years agoRemove #[cfg(stage0)] items.
Eduard Burtescu [Mon, 25 May 2015 17:21:29 +0000 (20:21 +0300)]
Remove #[cfg(stage0)] items.

9 years agoRegister snapshots (2015-05-24 ba0e1cd).
Eduard Burtescu [Mon, 25 May 2015 17:20:50 +0000 (20:20 +0300)]
Register snapshots (2015-05-24 ba0e1cd).

9 years agoAuto merge of #25791 - barosl:use-paths-as-items, r=alexcrichton
bors [Wed, 27 May 2015 07:14:45 +0000 (07:14 +0000)]
Auto merge of #25791 - barosl:use-paths-as-items, r=alexcrichton

Currently, for `use` declarations with multiple paths, only the `use` item itself is saved in the AST map, not the individual path nodes. This can lead to a problem when a span of a specific path node is needed.

For example, #24818 caused an ICE because of this, in `ImportResolver::check_for_conflicting_import()`.

Fixes #25763.

9 years agoAuto merge of #25749 - richo:python3, r=alexcrichton
bors [Wed, 27 May 2015 05:24:36 +0000 (05:24 +0000)]
Auto merge of #25749 - richo:python3, r=alexcrichton

This is enough to make `make tidy` work if you're using python3

There's definitely more stuff to do, but PR'ing now to avoid bitrot

9 years agoAuto merge of #25741 - richo:backtrace-message, r=alexcrichton
bors [Wed, 27 May 2015 02:15:44 +0000 (02:15 +0000)]
Auto merge of #25741 - richo:backtrace-message, r=alexcrichton

The second commit seems reasonable to me but I can remove if it's contentious. The first is purely cosmetic but has been irking me for ages.

9 years agoAuto merge of #25713 - Stebalien:pattern, r=alexcrichton
bors [Wed, 27 May 2015 00:42:55 +0000 (00:42 +0000)]
Auto merge of #25713 - Stebalien:pattern, r=alexcrichton

Needed to support:

```rust
match X {
  pattern if Y ...
}

for pattern in Y {}
```

IMO, this shouldn't require an RFC because it can't interfere with any future language changes (because `pattern if` and `pattern in` are already legal in rust) and can't cause any ambiguity.

9 years agoUpdate rustc manpage.
Ralph Giles [Tue, 26 May 2015 23:06:43 +0000 (16:06 -0700)]
Update rustc manpage.

rustc -C target-cpu=help is no longer supported. Recommend the
llc tool intead like 'rustc --help'.

9 years agoBump manpage date and version for 1.2.0-dev.
Ralph Giles [Tue, 26 May 2015 23:03:41 +0000 (16:03 -0700)]
Bump manpage date and version for 1.2.0-dev.

Estimating August as the release date for 1.2.0.

9 years agoAuto merge of #25688 - nham:E0055_E0192, r=alexcrichton
bors [Tue, 26 May 2015 23:10:06 +0000 (23:10 +0000)]
Auto merge of #25688 - nham:E0055_E0192, r=alexcrichton

 - Adds explanations for E0055, E0089, E0192, E0261-E0263, E0318
 - Improves explanations for E0250, E0368, E0372.
 - Converts 15 diagnostics to have error codes (E0380-E0394). Adds an explanation for E0380.
 - The E0087-E0090 messages currently look like "expected {} parameter(s) found {} parameter(s)". This changes them to either use "parameter" or "parameters", based on the number.

This is, in part, more progress towards #24407

9 years agoAdd note about filesystems to fs::rename
Steve Klabnik [Tue, 5 May 2015 20:30:13 +0000 (16:30 -0400)]
Add note about filesystems to fs::rename

Fixes #24816

9 years agoAdd a WONTFIX message to a failing test.
Nick Cameron [Tue, 26 May 2015 08:34:50 +0000 (20:34 +1200)]
Add a WONTFIX message to a failing test.

Closes #20184

9 years agoEnable colored test output when capturing output of tests
Johannes Oertel [Tue, 26 May 2015 21:46:55 +0000 (23:46 +0200)]
Enable colored test output when capturing output of tests

The output of individual tests can be captured now so it's safe to use
colorized output even when running tests in parallel. Closes #782.

9 years agoAuto merge of #25675 - bluss:rustdoc-assoc-types-index, r=alexcrichton
bors [Tue, 26 May 2015 21:36:57 +0000 (21:36 +0000)]
Auto merge of #25675 - bluss:rustdoc-assoc-types-index, r=alexcrichton

rustdoc: Associated type fixes

The first commit fixes a bug with "dud" items in the search index from
misrepresented `type` items in trait impl blocks.

For a trait *implementation* there are typedefs which are the types for
that particular trait and implementor. Skip these in the search index.

There were lots of dud items in the search index due to this (search for
Item, Iterator's associated type).

Add a boolean to clean::TypedefItem so that it tracks whether the it is
a type alias on its own, or if it's a `type` item in a trait impl.

The second commit fixes a bug that made signatures and where bounds
using associated types (if they were not on `Self`) incorrect.

The third commit fixes so that where clauses in type alias definititons
are shown.

Fixes #22442
Fixes #24417
Fixes #25769

9 years agoConvert 15 diagnostics to have error codes (E0380-E0394).
Nick Hamann [Tue, 19 May 2015 21:53:34 +0000 (16:53 -0500)]
Convert 15 diagnostics to have error codes (E0380-E0394).

Also adds explanations for E0380 and E0381.

9 years agoPluralize E0087-E0090 messages based on number of parameters.
Nick Hamann [Thu, 21 May 2015 18:33:31 +0000 (13:33 -0500)]
Pluralize E0087-E0090 messages based on number of parameters.

9 years agoFix typo.
Nick Hamann [Thu, 21 May 2015 06:17:50 +0000 (01:17 -0500)]
Fix typo.

9 years agoSmall improvements for explanations of E0250, E0368, E0372.
Nick Hamann [Tue, 19 May 2015 21:51:28 +0000 (16:51 -0500)]
Small improvements for explanations of E0250, E0368, E0372.

9 years agoAdd error explanations for E0055, E0089, E0192, E0261, E0262, E0263, E0318.
Nick Hamann [Tue, 19 May 2015 17:38:17 +0000 (12:38 -0500)]
Add error explanations for E0055, E0089, E0192, E0261, E0262, E0263, E0318.

9 years agoAuto merge of #24657 - aochagavia:rustdoc, r=alexcrichton
bors [Tue, 26 May 2015 20:04:09 +0000 (20:04 +0000)]
Auto merge of #24657 - aochagavia:rustdoc, r=alexcrichton

Fixes #24575
Fixes #25673

r? @alexcrichton

9 years agoetc: use codecs in featureck
Richo Healey [Tue, 26 May 2015 19:09:28 +0000 (12:09 -0700)]
etc: use codecs in featureck

this asserts that source is valid utf8 on both python3 and python2

9 years agoAuto merge of #25593 - nham:E0210_E0326, r=alexcrichton
bors [Tue, 26 May 2015 18:30:42 +0000 (18:30 +0000)]
Auto merge of #25593 - nham:E0210_E0326, r=alexcrichton

Changes:

 - adds explanations for E0185, E0186, E0202, E0326
 - fixes the explanation for E0053. The previous description was too narrow; there are other error cases.
 - changes the error message for E0202 to be specific for associated types, since it seems inherent associated constants are implemented.

Part of #24407

9 years agomk: Ensure LINK_$(1) is defined for all targets
Alex Crichton [Tue, 26 May 2015 16:48:24 +0000 (09:48 -0700)]
mk: Ensure LINK_$(1) is defined for all targets

The changes scaled back in 4cc025d8 were a little too aggressive and broke a
bunch of cross compilations by not defining the `LINK_$(1)` variable for all
targets. This commit ensures that the variable is defined for all targets by
defaulting it to the normal compiler if it's not already defined (it's only
defined specially for MSVC).

Closes #25723

9 years agoAdd tests for fixed issues
Ariel Ben-Yehuda [Tue, 26 May 2015 17:01:20 +0000 (20:01 +0300)]
Add tests for fixed issues

Fixes #23037.
Fixes #25339.

9 years agoAuto merge of #25091 - quantheory:trait_associated_const_fixes, r=nikomatsakis
bors [Tue, 26 May 2015 16:58:07 +0000 (16:58 +0000)]
Auto merge of #25091 - quantheory:trait_associated_const_fixes, r=nikomatsakis

Closes #25046 (by rejecting the code that causes the ICE) and #24946. I haven't been able to deal with the array size or recursion issues yet for associated consts, though my hope was that the change I made for range match patterns might help with array sizes, too.

This PR is pretty much orthogonal to #25065.

9 years agoDocument std::env::const values
Steve Klabnik [Thu, 21 May 2015 03:19:55 +0000 (23:19 -0400)]
Document std::env::const values

9 years agoDo not trip an assert when coercing &Trait to &Trait in constants.
Eduard Burtescu [Tue, 26 May 2015 14:57:40 +0000 (17:57 +0300)]
Do not trip an assert when coercing &Trait to &Trait in constants.
Fixes #24644.

9 years agoImplement defaults for associated types
Ariel Ben-Yehuda [Tue, 26 May 2015 14:12:39 +0000 (17:12 +0300)]
Implement defaults for associated types

9 years agoAuto merge of #25411 - alexcrichton:issue-18913, r=brson
bors [Tue, 26 May 2015 14:08:24 +0000 (14:08 +0000)]
Auto merge of #25411 - alexcrichton:issue-18913, r=brson

This flag indicates that when files are being replaced or added to archives (the
`r` flag) that the new file should not be inserted if it is not newer than the
file that already exists in the archive. The compiler never actually has a use
case of *not* wanting to insert a file because it already exists, and this
causes rlibs to not be updated in some cases when the compiler was re-run too
quickly.

Closes #18913

9 years agorustc_back: Don't pass 'u' to ar invocations
Alex Crichton [Thu, 14 May 2015 18:53:37 +0000 (11:53 -0700)]
rustc_back: Don't pass 'u' to ar invocations

This flag indicates that when files are being replaced or added to archives (the
`r` flag) that the new file should not be inserted if it is not newer than the
file that already exists in the archive. The compiler never actually has a use
case of *not* wanting to insert a file because it already exists, and this
causes rlibs to not be updated in some cases when the compiler was re-run too
quickly.

Closes #18913

9 years agoAuto merge of #25785 - arielb1:cleanup-201505, r=eddyb
bors [Tue, 26 May 2015 12:15:30 +0000 (12:15 +0000)]
Auto merge of #25785 - arielb1:cleanup-201505, r=eddyb

The caching essentially eliminates "stability checking" time (my attempt to clean-up junk got tangled up with stability, so I added the caching while I was at it).

r? @eddyb

9 years agoAuto merge of #25778 - econoplas:master, r=pnkfelix
bors [Tue, 26 May 2015 09:49:36 +0000 (09:49 +0000)]
Auto merge of #25778 - econoplas:master, r=pnkfelix

A regression was introduced by commit https://github.com/rust-lang/rust/commit/7b1916d25347913fce3e336517ef22025ccd875f #25612.  Negative signed integer literals less than -9223372036854775808i64 were no longer properly reported as #[warn(overflowing_literals)].

Also adding missing test cases to test/compile-fail/lint-type-overflow.rs which could have detected the regression.

Further explanation:

The expression `(negative && v > max as u64 + 1)` relies on the fact that algebraically speaking `-min == max + 1` to avoid negation and removing the need for `min` completely.

If i128 or i256 are ever added, it should also work for these types without requiring a change to `min != i64::MIN &&` also simplifying maintenance.

r? @pnkfelix

9 years agoRemove ObjectCastMap
Ariel Ben-Yehuda [Mon, 25 May 2015 23:28:04 +0000 (02:28 +0300)]
Remove ObjectCastMap

9 years agoUse lookup_locally_or_in_crate_store more often
Ariel Ben-Yehuda [Mon, 25 May 2015 21:42:22 +0000 (00:42 +0300)]
Use lookup_locally_or_in_crate_store more often

9 years agoAssociate each path in a `use` declaration with the item in the AST map
Barosl Lee [Tue, 26 May 2015 02:27:15 +0000 (11:27 +0900)]
Associate each path in a `use` declaration with the item in the AST map

Currently, for `use` declarations with multiple paths, only the `use`
item itself is saved in the AST map, not the individual path nodes. This
can lead to a problem when a span of a specific path node is needed.

For example, #24818 caused an ICE because of this, in
`ImportResolver::check_for_conflicting_import()`.

Fixes #25763.

9 years agoMake caching in stability work. This improves stability check performance
Ariel Ben-Yehuda [Mon, 25 May 2015 21:41:27 +0000 (00:41 +0300)]
Make caching in stability work. This improves stability check performance
by 90%.

9 years agoClean-up some junk
Ariel Ben-Yehuda [Mon, 25 May 2015 17:51:16 +0000 (19:51 +0200)]
Clean-up some junk

9 years agoRemove redundant compiler check. Allow CC override
Kubilay Kocak [Tue, 26 May 2015 08:23:33 +0000 (18:23 +1000)]
Remove redundant compiler check. Allow CC override

Currently, there are two conditional blocks that exist to check for "clang or gcc"

On line 866:

```
if [ -z "$CFG_ENABLE_CLANG" -a -z "$CFG_GCC" ]
then
    err "either clang or gcc is required"
fi
```
and on line 1019:

```
if [ -z "$CC" -a -z "$CFG_ENABLE_CLANG" -a -z "$CFG_GCC" ]
then
    err "either clang or gcc is required"
fi
```

Given the order of the clauses, this results in the "either clang or gcc is required" error from the earlier block, (even) when CC is set.

The expected behaviour is to honour user-flags, in this case CC.

Aside from removing all hand-holdy compiler checks in favour of actual compiler *feature* checks, this change removes the redundant former block in favour of the latter block, which appears designed to allow the expected behaviour.

9 years agoAuto merge of #25767 - mystor:patch-1, r=Gankro
bors [Mon, 25 May 2015 23:02:52 +0000 (23:02 +0000)]
Auto merge of #25767 - mystor:patch-1, r=Gankro

By the same logic that `mem::forget` is safe, `boxed::into_raw` is actually a safe function.

Fixes #25755.

9 years agoAuto merge of #25771 - killercup:trpl/cleanup-markdown-links, r=steveklabnik
bors [Mon, 25 May 2015 21:28:51 +0000 (21:28 +0000)]
Auto merge of #25771 - killercup:trpl/cleanup-markdown-links, r=steveklabnik

In all other places the IDs of link references are without spaces (and explicitly set).

These are just some cleanups I did for the PDF version.

r? @steveklabnik

9 years agorustdoc: Show where clauses in type aliases
Ulrik Sverdrup [Mon, 25 May 2015 21:05:35 +0000 (23:05 +0200)]
rustdoc: Show where clauses in type aliases

Yes, it's allowed. Example:

    type MapFn<I, B> where I: Iterator = Map<I, fn(I::Item) -> B>;

Fixes #25769

9 years agoAuto merge of #25698 - mdinger:flat_map, r=steveklabnik
bors [Mon, 25 May 2015 19:52:45 +0000 (19:52 +0000)]
Auto merge of #25698 - mdinger:flat_map, r=steveklabnik

I'm not sure why `core` is on but it's blocking the playpen. Doesn't seem to be needed but I'm not sure. It's not on the playpen template and playpen works on release and nightly.

Seems easier to understand without `take()`.

9 years agoRemove unsafe block around boxed::into_raw() as it is now safe
Michael Layzell [Mon, 25 May 2015 18:44:22 +0000 (14:44 -0400)]
Remove unsafe block around boxed::into_raw() as it is now safe

9 years agoAuto merge of #25742 - thombles:tk/StringCoercion, r=steveklabnik
bors [Mon, 25 May 2015 18:18:11 +0000 (18:18 +0000)]
Auto merge of #25742 - thombles:tk/StringCoercion, r=steveklabnik

A few of us [over on the forum](https://users.rust-lang.org/t/string-type-coercion-in-rust/1439) have been tripped up by this distinction, which I don't think is mentioned. It's kind of logical if you read the "Deref coercions" page and squint a bit but I think it would be nice to explain it directly. Here's one way we could clarify it.

9 years agorustdoc: Fix associated types in signatures
Ulrik Sverdrup [Mon, 25 May 2015 13:06:38 +0000 (15:06 +0200)]
rustdoc: Fix associated types in signatures

Functions such as `fn foo<I: Iterator>(x: I::Item)` would not
render correctly and displayed `I` instead of `I::Item`. Same thing
with `I::Item` appearing in where bounds.

This fixes the bug by using paths for generics.

Fixes #24417

9 years agoAuto merge of #25773 - dotdash:deref_dst, r=eddyb
bors [Mon, 25 May 2015 15:54:39 +0000 (15:54 +0000)]
Auto merge of #25773 - dotdash:deref_dst, r=eddyb

Fat pointers aren't immediate, so in a datum, they're not actually
ByValue but ByRef.

Fixes #24589

9 years agoFix auto_ref for fat pointers
Björn Steinbrink [Mon, 25 May 2015 15:17:27 +0000 (17:17 +0200)]
Fix auto_ref for fat pointers

Fat pointers aren't immediate, so in a datum, they're not actually
ByValue but ByRef.

Fixes #24589

9 years ago- Fix regression of literal out of range check for negative i64 values which was...
econoplas [Mon, 25 May 2015 13:42:16 +0000 (07:42 -0600)]
- Fix regression of literal out of range check for negative i64 values which was introduced by commit 7b1916d25347913fce3e336517ef22025ccd875f.
- Add missing test cases to test/compile-fail/lint-type-overflow.rs which would have detected the regression.

9 years agoRustdoc: ignore deref-inherited static methods
Adolfo Ochagavía [Sun, 26 Apr 2015 19:03:38 +0000 (21:03 +0200)]
Rustdoc: ignore deref-inherited static methods

Fixes #24575

9 years agoTRPL: Clean up some Markdown links
Pascal Hertleif [Mon, 25 May 2015 13:10:50 +0000 (15:10 +0200)]
TRPL: Clean up some Markdown links

In all other places the IDs of link references are without spaces (and
explicitly set).

9 years agoAuto merge of #25770 - dotdash:bool_transmute, r=eddyb
bors [Mon, 25 May 2015 12:20:24 +0000 (12:20 +0000)]
Auto merge of #25770 - dotdash:bool_transmute, r=eddyb

Fixes #25746

9 years agoFix transmutes with boolean source values
Björn Steinbrink [Mon, 25 May 2015 11:08:31 +0000 (13:08 +0200)]
Fix transmutes with boolean source values

Fixes #25746

9 years agoFix interchanged names of to_arg_ty and from_arg_ty
Björn Steinbrink [Mon, 25 May 2015 10:58:19 +0000 (12:58 +0200)]
Fix interchanged names of to_arg_ty and from_arg_ty

9 years agobook: add no_run and use statement to strings no-coercion example
Thomas Karpiniec [Mon, 25 May 2015 08:38:17 +0000 (18:38 +1000)]
book: add no_run and use statement to strings no-coercion example

9 years agoAuto merge of #25764 - tshepang:typo, r=steveklabnik
bors [Mon, 25 May 2015 05:19:11 +0000 (05:19 +0000)]
Auto merge of #25764 - tshepang:typo, r=steveklabnik

9 years agoAuto merge of #25761 - ralexstokes:master, r=steveklabnik
bors [Mon, 25 May 2015 03:40:31 +0000 (03:40 +0000)]
Auto merge of #25761 - ralexstokes:master, r=steveklabnik

Typo in explanation of difference between stack and heap values.

`baz` is called at the end of a call to `bar` inside another call to `foo`.  `baz` takes a copy of the value `e` which should have a value of 9 if following the rest of the stack trace.

This PR fixes this typo and should close #25635.

9 years agoAuto merge of #25736 - tshepang:path-nits, r=steveklabnik
bors [Mon, 25 May 2015 01:56:48 +0000 (01:56 +0000)]
Auto merge of #25736 - tshepang:path-nits, r=steveklabnik

9 years agoMark `boxed::into_raw` as safe
Michael Layzell [Mon, 25 May 2015 01:45:29 +0000 (21:45 -0400)]
Mark `boxed::into_raw` as safe

By the same logic that `mem::forget` is safe, `boxed::into_raw` is actually a safe function. Fixes #25755.

9 years agoAuto merge of #25756 - tshepang:needless-cloned, r=steveklabnik
bors [Mon, 25 May 2015 00:15:24 +0000 (00:15 +0000)]
Auto merge of #25756 - tshepang:needless-cloned, r=steveklabnik

9 years agodoc: fix io::Write::write typo
Tshepang Lekhonkhobe [Sun, 24 May 2015 23:53:44 +0000 (01:53 +0200)]
doc: fix io::Write::write typo

9 years agoAuto merge of #25758 - tshepang:add-cloned-example, r=Gankro
bors [Sun, 24 May 2015 22:42:00 +0000 (22:42 +0000)]
Auto merge of #25758 - tshepang:add-cloned-example, r=Gankro

9 years agodoc: add example for Iterator::cloned()
Tshepang Lekhonkhobe [Sun, 24 May 2015 21:38:26 +0000 (23:38 +0200)]
doc: add example for Iterator::cloned()

9 years agoFix typo in diagram demonstrating stack vs. heap values
Alex Stokes [Sun, 24 May 2015 22:18:43 +0000 (15:18 -0700)]
Fix typo in diagram demonstrating stack vs. heap values

9 years agodoc: cloned() and mut not needed
Tshepang Lekhonkhobe [Sun, 24 May 2015 20:55:34 +0000 (22:55 +0200)]
doc: cloned() and mut not needed

9 years agoAuto merge of #25464 - zaeleus:trpl-riol, r=pnkfelix
bors [Sun, 24 May 2015 15:52:17 +0000 (15:52 +0000)]
Auto merge of #25464 - zaeleus:trpl-riol, r=pnkfelix

r? @steveklabnik

9 years agoetc: work around utf8 text in rust sources on py3 in featureck
Richo Healey [Sun, 24 May 2015 12:41:38 +0000 (05:41 -0700)]
etc: work around utf8 text in rust sources on py3 in featureck

9 years agoetc: py3 compat for tidy.py
Richo Healey [Sun, 24 May 2015 12:34:29 +0000 (05:34 -0700)]
etc: py3 compat for tidy.py

9 years agoetc: py3 compat for featureck
Richo Healey [Sun, 24 May 2015 12:31:59 +0000 (05:31 -0700)]
etc: py3 compat for featureck

Also rewrite most of the string formatting to be a bit more idiomatic

9 years agoetc: py3 compat for errorck.py
Richo Healey [Sun, 24 May 2015 12:22:00 +0000 (05:22 -0700)]
etc: py3 compat for errorck.py

9 years agoetc: py3 compat for check-summary.py
Richo Healey [Sun, 24 May 2015 12:12:40 +0000 (05:12 -0700)]
etc: py3 compat for check-summary.py

9 years agoetc: Delete unused helper script
Richo Healey [Sun, 24 May 2015 12:08:53 +0000 (05:08 -0700)]
etc: Delete unused helper script

9 years agoAuto merge of #25609 - nikomatsakis:const-fn, r=pnkfelix
bors [Sun, 24 May 2015 11:12:34 +0000 (11:12 +0000)]
Auto merge of #25609 - nikomatsakis:const-fn, r=pnkfelix

This is a port of @eddyb's `const-fn` branch. I rebased it, tweaked a few things, and added tests as well as a feature gate. The set of tests is still pretty rudimentary, I'd appreciate suggestions on new tests to write. Also, a double-check that the feature-gate covers all necessary cases.

One question: currently, the feature-gate allows the *use* of const functions from stable code, just not the definition. This seems to fit our usual strategy, and implies that we might (perhaps) allow some constant functions in libstd someday, even before stabilizing const-fn, if we were willing to commit to the existence of const fns but found some details of their impl unsatisfactory.

r? @pnkfelix