Commit graph

74615 commits

Author SHA1 Message Date
Shaun Steenkamp
29f71488bc 38880 remove redundant extra function 2018-02-12 14:00:08 +00:00
Antoni Boucher
146b81c2c6 Fix tidy errors 2018-02-12 08:07:10 -05:00
Scott McMurray
0bb818cc0b Add Iterator::try_for_each
The fallible version of for_each and the stateless version of try_fold.
2018-02-12 01:39:01 -08:00
bors
16362c737f Auto merge of #47843 - estebank:teach, r=nikomatsakis
Add `-Zteach` documentation

Add extra inline documentation to E0019, E0016, E0013, E0396, E0017,
E0018, E0010, E0022, E0030, E0029, E0033, E0026 and E0027.

Follow up to #47652.
2018-02-12 09:38:40 +00:00
Mazdak Farrokhzad
efa332038c core::iter::repeat_with: fix doc tests 2018-02-12 09:18:22 +01:00
Mazdak Farrokhzad
55c669c4d9 core::iter::repeat_with: fix tests some more 2018-02-12 09:15:13 +01:00
Mazdak Farrokhzad
f025eff21d core::iter::repeat_with: fix tests 2018-02-12 09:13:47 +01:00
Mazdak Farrokhzad
1af9ee1350 core::iter::repeat_with: derive Copy, Clone, Debug 2018-02-12 08:35:12 +01:00
Mazdak Farrokhzad
c4099ca4b1 core::iter::repeat_with: general fixes 2018-02-12 08:25:39 +01:00
Mazdak Farrokhzad
0f789aad2b add core::iter::repeat_with 2018-02-12 08:05:46 +01:00
bors
b54f27ba36 Auto merge of #48144 - kennytm:reduce-musl-test-size, r=Mark-Simulacrum
Compiletest: delete the compiled program once its test is done.

Reduces CI disk usage which prevents #48118 from succeeding.
2018-02-12 06:43:24 +00:00
Esteban Küber
f7cabc6550 Continue parsing function after finding ... arg
When encountering a variadic argument in a function definition that
doesn't accept it, if immediately after there's a closing paren,
continue parsing as normal. Otherwise keep current behavior of emitting
error and stopping.
2018-02-11 22:10:35 -08:00
Antoni Boucher
56e15de9f9 Make primitive types docs relevant (unsigned) 2018-02-11 21:53:30 -05:00
Guillaume Gomez
9931583468 Make primitive types docs relevant 2018-02-11 21:53:30 -05:00
Jason Schein
bd426f1d69 Update ops range example to avoid confusion between indexes and values. 2018-02-11 17:54:44 -08:00
Mark Simulacrum
00bce71144 Delete executables if the test ran successfully.
This isn't a perfect heuristic, but since the amount of run-fail tests
is far lower than run-pass tests for now, it should be sufficient to
ensure that we don't run into CI limits. This makes it possible to run
the test binary manually (e.g., under gdb/lldb) if it failed to attempt
to find out why.
2018-02-11 16:27:33 -07:00
kennytm
66ee33a437
compiletest: Delete the executable immediately after running.
This should save a lot of space on musl test cases (whose standard library
are linked statically).
2018-02-12 03:13:25 +08:00
Peter Atashian
9269e83b37
Add an unstable FileTypeExt extension trait for Windows 2018-02-11 13:40:46 -05:00
bors
b8398d947d Auto merge of #47752 - mark-i-m:at-most-once-rep, r=nikomatsakis
Implement `?` macro repetition

See rust-lang/rfcs#2298 (with disposition merge)
2018-02-11 18:11:01 +00:00
Mark Simulacrum
f104b12059 Change Step to be invoked with a path when in default mode.
Previously, a Step would be able to tell on its own when it was invoked
"by-default" (that is, `./x.py test` was called instead of `./x.py test
some/path`). This commit replaces that functionality, invoking each Step
with each of the paths it has specified as "should be invoked by."

For example, if a step calls `path("src/tools/cargo")` and
`path("src/doc/cargo")` then it's make_run will be called twice, with
"src/tools/cargo" and "src/doc/cargo." This makes it so that default
handling logic is in builder, instead of spread across various Steps.

However, this meant that some Step specifications needed to be updated,
since for example `rustdoc` can be built by `./x.py build
src/librustdoc` or `./x.py build src/tools/rustdoc`. A `PathSet`
abstraction is added that handles this: now, each Step can not only list
`path(...)` but also `paths(&[a, b, ...])` which will make it so that we
don't invoke it with each of the individual paths, instead invoking it
with the first path in the list (though this shouldn't be depended on).

Future work likely consists of implementing a better/easier way for a
given Step to work with "any" crate in-tree, especially those that want
to run tests, build, or check crates in the std, test, or rustc crate
trees. Currently this is rather painful to do as most of the logic is
duplicated across should_run and make_run. It seems likely this can be
abstracted away into builder somehow.
2018-02-11 10:03:16 -07:00
bors
0196b20f69 Auto merge of #47614 - dotdash:x86_64_sysv_ffi, r=eddyb
Fix oversized loads on x86_64 SysV FFI calls

The x86_64 SysV ABI should use exact sizes for small structs passed in
registers, i.e. a struct that occupies 3 bytes should use an i24,
instead of the i32 it currently uses.

Refs #45543
2018-02-11 15:10:46 +00:00
Artyom Pavlov
c2a31dee83
Dangling pointer fix 2018-02-11 15:57:07 +03:00
Jeffrey Seyfried
a003cb7cd7 Add test. 2018-02-11 02:19:27 -08:00
kennytm
bf69b0feed
Upgrade the Travis CI macOS images for testing from Xcode 8.3 to 9.2. 2018-02-11 14:28:28 +08:00
bors
0bb8935136 Auto merge of #47657 - algesten:save-analysis-impls, r=nrc
Emit data::Impl in save-analysis

As discussed on [internals.rust-lang](https://internals.rust-lang.org/t/rustdoc2-rls-analysis-and-the-compiler-help-wanted/6592/5), this PR emits `rls-data::Impl` in the save-analysis.

A number of questions are outstanding:

- [x] A few `???` around row 356. We need to discuss what goes here, if anything.
- [ ] ~~Deriving `id` for impl using hashing. Is this going to clash with rustc defids?~~
- [ ] ~~Deriving `id` for impl using hashing. Is the conversion from 64 bit -> 32 bit problematic?~~
- [x] Need a new rls-data with an `id` field in `Impl` struct.
- [ ] ~~Need a new rls-data which `derive` `Hash` for `ImplKind` enum.~~
2018-02-11 05:29:20 +00:00
bors
7f2baba121 Auto merge of #48092 - eddyb:discriminate-the-void, r=nikomatsakis
rustc_mir: insert a dummy access to places being matched on, when building MIR.

Fixes #47412 by adding a `_dummy = Discriminant(place)` before each `match place {...}`.

r? @nikomatsakis
2018-02-11 02:42:19 +00:00
Mark Simulacrum
55c36e3744 Remove DontDistWithMiri struct and instead just directly check it in builder 2018-02-10 18:18:41 -07:00
Mark Simulacrum
11580b7be3 Make exclude and paths relative to root of checkout 2018-02-10 18:15:34 -07:00
Mark Simulacrum
8c506f9dae Implement excluding a build-step via --exclude 2018-02-10 17:37:42 -07:00
Scott McMurray
22b0489f80 Add the emptiness condition to the docs; add a PartialOrd example with NAN 2018-02-10 16:32:05 -08:00
Артём Павлов [Artyom Pavlov]
7c6adb475a
fixed errors 2018-02-11 03:27:04 +03:00
Matthias Krüger
161e8ffda7 typo: correct endianess to endianness (this also changes function names!) 2018-02-11 00:56:24 +01:00
bors
d0f1f42816 Auto merge of #47286 - Aaronepower:master, r=Mark-Simulacrum
Update RELEASES.md for 1.24.0

[rendered](https://github.com/Aaronepower/rust/blob/master/RELEASES.md)
2018-02-10 23:50:18 +00:00
Артём Павлов [Artyom Pavlov]
c97aa09117
iterator instead loop 2018-02-11 02:36:22 +03:00
Артём Павлов [Artyom Pavlov]
8be306840f
added conversion from Rust feature to LLVM feature 2018-02-11 02:27:21 +03:00
Aaron Power
28b39f5d7a Update release notes for 1.24.0 2018-02-10 15:12:39 -07:00
Oliver Middleton
45d5a420ad Correct a few stability attributes 2018-02-10 21:20:42 +00:00
roblabla
3c01dea03e Add comment about the problem, and use provided path if available 2018-02-10 21:29:10 +01:00
bors
45fba43b3d Auto merge of #48113 - kennytm:rollup, r=kennytm
Rollup of 20 pull requests

- Successful merges: #47790, #47835, #47854, #48015, #48047, #48051, #48058, #48059, #48064, #48078, #48080, #48086, #48098, #48101, #48107, #48100, #48085, #48120, #48124, #47547
- Failed merges:
2018-02-10 19:48:20 +00:00
kennytm
4a827188cc
Rollup merge of #47547 - varkor:infinite-iterators-warning-doc, r=frewsxcv
Document the behaviour of infinite iterators on potentially-computable methods

It’s not entirely clear from the current documentation what behaviour
calling a method such as `min` on an infinite iterator like `RangeFrom`
is. One might expect this to terminate, but in fact, for infinite
iterators, `min` is always nonterminating (at least in the standard
library). This adds a quick note about this behaviour for clarification.
2018-02-11 03:39:53 +08:00
Artyom Pavlov
877272ba06
typo fix 2018-02-10 20:07:37 +03:00
kennytm
b37c60276a
Rollup merge of #48124 - alexcrichton:clean-up-debugging, r=kennytm
Explain unusual debugging code in librustc

Introduced in #47828 to help track down some bugs, it landed a bit hastily so
this is intended on cleaning it up a bit.
2018-02-11 00:53:47 +08:00
kennytm
18d7be3381
Rollup merge of #48120 - matthiaskrgr:typos_src_1, r=alexcrichton
fix typos in src/{bootstrap,ci,etc,lib{backtrace,core,fmt_macros}}

via codespell
2018-02-11 00:53:05 +08:00
kennytm
c888f72304
Rollup merge of #48085 - alexcrichton:update-dlmalloc, r=Mark-Simulacrum
Update the dlmalloc submodule

A bug was recently fixed in dlmalloc which meant that released memory to the
system accidentally wasn't getting reused, causing programs to be far slower
than they should be!
2018-02-11 00:51:56 +08:00
Artyom Pavlov
14f488ee7d
Whitelist pclmul x86 feature flag
Relevant `stdsimd` [issue](https://github.com/rust-lang-nursery/stdsimd/issues/318).
2018-02-10 19:22:04 +03:00
Alex Crichton
3a967676f8 Explain unusual debugging code in librustc
Introduced in #47828 to help track down some bugs, it landed a bit hastily so
this is intended on cleaning it up a bit.
2018-02-10 07:03:35 -08:00
Alex Crichton
49f7ccd35f Update the dlmalloc submodule
A bug was recently fixed in dlmalloc which meant that released memory to the
system accidentally wasn't getting reused, causing programs to be far slower
than they should be!
2018-02-10 07:01:27 -08:00
Guillaume Gomez
0cccd9aca5 Show better warning for trying to cast non-u8 scalar to char 2018-02-10 15:35:56 +01:00
Matthias Krüger
7ee3e39f64 fix typos in src/{bootstrap,ci,etc,lib{backtrace,core,fmt_macros}} 2018-02-10 12:22:57 +01:00
kennytm
8550ac8015
Rollup merge of #48100 - Mark-Simulacrum:fetch-nand, r=alexcrichton
Add fetch_nand to atomics

I think this is all fine but I have little familiarity with the atomic code (or libcore in general) so I may have accidentally done something wrong here...

cc #13226 (the tracking issue)
2018-02-10 14:26:57 +08:00