Commit Graph

50257 Commits

Author SHA1 Message Date
Simonas Kazlauskas
f9f6e3ad10 [MIR] Reintroduce the unit temporary
An attempt to make loop body destination be optional, author implemented a pretty self contained
change and deemed it to be (much) uglier than the alternative of just keeping the unit temporary.
Having the temporary created lazily also has a nice property of not figuring in the MIR of
functions which do not use loops of any sort.
2016-01-19 22:53:34 +02:00
Brian Anderson
796f15878c Add test for #30123 2016-01-19 20:48:11 +00:00
bors
f8c2d57f4c Auto merge of #30696 - steveklabnik:gh30655, r=brson
Fixes #30655
2016-01-19 17:34:20 +00:00
bors
84157dbd4c Auto merge of #31018 - gutworth:doc-loc, r=alexcrichton 2016-01-19 15:40:22 +00:00
Vincent Esche
48e8326893 Refined error message.
More human-readable error message showing ellipsis for excessively long witness lists.
2016-01-19 15:02:42 +01:00
bors
41b74b11b4 Auto merge of #30845 - nagisa:mir-extern-calls, r=dotdash
Supersedes https://github.com/rust-lang/rust/pull/30517
Fixes https://github.com/rust-lang/rust/issues/29575

cc @luqmana
r? @nikomatsakis
2016-01-19 13:46:18 +00:00
Simonas Kazlauskas
99e8b4d755 [MIR] Implement extern call support 2016-01-19 15:14:04 +02:00
bors
f6dd66e568 Auto merge of #31014 - nrc:fmt-term, r=sfackler 2016-01-19 11:51:58 +00:00
Ulrik Sverdrup
9d77694d5d Fix type parameter default error to mention type and trait definitions
Introduced in PR #30724, needs to mention that type parameter defaults
are legal in trait and type definitions too.
2016-01-19 12:38:24 +01:00
Oliver Schneider
84a5790f3a fix the docs and simplify the implementation of unsigned wrapping ops 2016-01-19 10:47:27 +01:00
bors
ced5a85940 Auto merge of #31015 - nrc:fmt-test, r=sfackler 2016-01-19 07:59:55 +00:00
Vincent Esche
6100743842 Improve error message for non-exhaustive patterns
Changes error message from displaying first found missing constructor witness to showing up to 10, if necessary.

Fixes issue #16884.
2016-01-19 08:42:55 +01:00
Andrea Bedini
0f8fc2cb8b Improve CStr::from_ptr example in docs
Documentation of `CStr::from_ptr` suggests using `str::from_utf8(slice.to_bytes()).unwrap()`
to obtain a `&str` but `CStr` has `CStr::to_str` that does exactly that.
2016-01-19 16:29:53 +11:00
Benjamin Peterson
0a7faeeae9 fix path to region inference documentation 2016-01-18 20:24:13 -08:00
Nick Cameron
e305ee6db9 manual fixups 2016-01-19 15:02:56 +13:00
Nick Cameron
2acfa838a0 rustfmt libtest 2016-01-19 14:55:13 +13:00
Nick Cameron
f368f43a7b rustfmt libterm 2016-01-19 14:51:22 +13:00
bors
c66e88289e Auto merge of #31013 - nrc:fmt-rbml, r=sfackler 2016-01-19 01:48:27 +00:00
Nick Cameron
8863d37f24 manual fixups 2016-01-19 14:39:23 +13:00
Nick Cameron
7c2bfd12a0 rustfmt librbml 2016-01-19 14:30:48 +13:00
bors
7a7307e5cf Auto merge of #31006 - Manishearth:rollup, r=Manishearth
- Successful merges: #30981, #30982, #30986, #30987, #30988, #30990, #30998
- Failed merges:
2016-01-18 23:04:55 +00:00
Manish Goregaokar
652fa5c0e9 Rollup merge of #31008 - barosl:typo, r=bluss 2016-01-19 04:08:59 +05:30
Manish Goregaokar
df61f4e504 Rollup merge of #30998 - apasel422:btree-set-variance, r=Gankro
CC #30642

r? @Gankro
2016-01-19 04:08:59 +05:30
Manish Goregaokar
11e24a21cd Rollup merge of #30990 - msvbg:msvbg-clang-7x, r=alexcrichton
I'm using clang 7.2 which works just fine to compile Rust with, but was disallowed.
2016-01-19 04:08:59 +05:30
Manish Goregaokar
49474313fd Rollup merge of #30988 - bluss:doc-space-t-bound, r=apasel422
Fix spacing style of `T: Bound` in docs

The space between `T` and `Bound` is the typical style used in code and
produced by rustdoc's rendering. Fixed first in Reflect's docs and then
I fixed all occurrences in docs I could find.
2016-01-19 04:08:59 +05:30
Manish Goregaokar
f0e8594bce Rollup merge of #30986 - sliz1:book-macro, r=alexcrichton
Sorry for nitpicking, but I think the example of the expanded macro should be wrapped inside a pair of curly braces to match the macro definition. Also the current example triggers a variable redefinition error.
2016-01-19 04:08:58 +05:30
Manish Goregaokar
f791395525 Rollup merge of #30981 - boblehest:tmp, r=alexcrichton
Original: #30968 (My first PR was targeting the wrong branch)
2016-01-19 04:08:58 +05:30
Barosl Lee
1a8cdc0f2f Use different numbers of #s when expanding documentation comments
Any documentation comments that contain raw-string-looking sequences may
pretty-print invalid code when expanding them, as the current logic
always uses the `r"literal"` form, without appending any `#`s.

This commit calculates the minimum number of `#`s required to wrap a
comment correctly and appends `#`s appropriately.

Fixes #27489.
2016-01-19 06:24:08 +09:00
Barosl Lee
d449ec0195 Fix typo 2016-01-19 06:23:57 +09:00
bors
acc699f2e9 Auto merge of #30987 - antonblanchard:powerpc64_merge3, r=alexcrichton
We currently pass generic as the CPU to LLVM. This results in worse
than required code generation. On little endian, which is only POWER8,
we avoid many POWER4 and newer instructions.

Pass ppc64 and ppc64le instead.
2016-01-18 21:11:53 +00:00
bors
08886499cf Auto merge of #31000 - bluss:efficient-clone-from-slice, r=dotdash
Restore indexed formulation of clone_from_slice

For good codegen here, we need a lock step iteration where the loop
bound is only checked once per iteration; .zip() unfortunately does not
optimize this way.

If we use a counted loop, and make sure that llvm sees that the bounds
check condition is the same as the loop bound condition, the bounds
checks are optimized out. For this reason we need to slice `from`
(apparently) redundantly.

This commit restores the old formulation of clone_from_slice. In this
shape, clone_from_slice will again optimize into calling memcpy where possible
(for example for &[u8] or &[i32]).
2016-01-18 18:35:48 +00:00
Martin
da56967a3e Enumerate acceptable clang versions 2016-01-18 15:57:57 +01:00
Ulrik Sverdrup
6a7bc47a8f core: Restore indexed formulation of clone_from_slice
For good codegen here, we need a lock step iteration where the loop
bound is only checked once per iteration; .zip() unfortunately does not
optimize this way.

If we use a counted loop, and make sure that llvm sees that the bounds
check condition is the same as the loop bound condition, the bounds
checks are optimized out. For this reason we need to slice `from`
(apparently) redundantly.

This commit restores the old formulation of clone_from_slice. In this
shape, clone_from_slice will again optimize into calling memcpy where possible
(for example for &[u8] or &[i32]).
2016-01-18 15:28:00 +01:00
bors
a09a604d36 Auto merge of #30956 - KiChjang:move-tests-to-libcollectionstest, r=bluss
Encountered while I was trying to work on #28518. Please let me know whether this is a correct move.
2016-01-18 13:28:57 +00:00
Andrew Paseltiner
686be822ef Make btree_set::{IntoIter, Iter, Range} covariant
CC #30642
2016-01-18 07:53:12 -05:00
bors
50a8333300 Auto merge of #30996 - oli-obk:fix/load_range_assert, r=nagisa
it makes no sense here, accidentally introduced in #30931

r? @dotdash
2016-01-18 10:34:59 +00:00
Oliver Schneider
c02ba1618d revert using trans::Disr in LoadRangeAssert
it makes no sense here, accidentally introduced in #30931
2016-01-18 11:30:52 +01:00
bors
9d21acaf9b Auto merge of #30953 - KalitaAlexey:17823-get-rid-of-duplicate-error, r=nrc 2016-01-18 06:29:59 +00:00
kalita.alexey
8a41eb55d8 simplify E0308 message for primitive types 2016-01-18 08:59:44 +04:00
Martin
2f1703d161 Allow clang 7.x in configuration
I'm using clang 7.2 which works just fine to compile Rust with, but was disallowed.
2016-01-18 04:44:35 +01:00
bors
257d3244f0 Auto merge of #30980 - gereeter:fix-btree-iter-variance, r=apasel422
This takes the approach of making `NodeRef` universally covariant.

 Fixes #30979.
2016-01-18 02:55:09 +00:00
bors
d0bac3f147 Auto merge of #30973 - SimonSapin:patch-16, r=alexcrichton
I don’t understand what the "flow information" of an IPv6 address is, but it looks separate from the scope ID. This was probably a copy/paste error.
2016-01-18 00:58:21 +00:00
bors
4ab9a2d1d6 Auto merge of #30964 - GuillaumeGomez:patch-5, r=Manishearth
r? @Manishearth
2016-01-17 22:51:11 +00:00
Ulrik Sverdrup
f4fac9b0fa Fix spacing style of T: Bound in docs
The space between `T` and `Bound` is the typical style used in code and
produced by rustdoc's rendering. Fixed first in Reflect's docs and then
I fixed all occurrences in docs I could find.
2016-01-17 23:44:33 +01:00
Stephen (Ziyun) Li
8a829704cb Fix C macro example 2016-01-17 14:56:23 -05:00
Anton Blanchard
1fb9f42c6b Fix LLVM default CPU on powerpc64 and powerpc64le
We currently pass generic as the CPU to LLVM. This results in worse
than required code generation. On little endian, which is only POWER8,
we avoid many POWER4 and newer instructions.

Pass ppc64 and ppc64le instead.
2016-01-17 19:45:10 +00:00
Jonathan S
7a9c4a4941 Expand the macro in variance-btree-invariant-types.rs to make compiletest recognize that it should error 2016-01-17 11:26:11 -06:00
bors
f682639ce6 Auto merge of #30978 - nikomatsakis:fulfillment-tree-add-fixme, r=aturon
r? @aturon
2016-01-17 16:10:27 +00:00
Jonathan S
fae75c93b3 Fix and test variance of BTreeMap and its companion structs. 2016-01-17 10:08:22 -06:00
Oliver Schneider
f2c0ecded5 enable cross crate and unsafe const fn 2016-01-17 15:24:46 +01:00