Commit Graph

50633 Commits

Author SHA1 Message Date
Ariel Ben-Yehuda
999f1767ca add -Z mir-opt-level to disable MIR optimizations
setting -Z mir-opt-level=0 will disable all MIR optimizations
for easier debugging
2016-02-20 01:38:27 +02:00
Steve Klabnik
78f6431002 Rollup merge of #31775 - nxnfufunezn:issue-31769, r=eddyb
Fixes : #31769
r? @eddyb
2016-02-19 14:23:29 -05:00
Steve Klabnik
2fe817df40 Rollup merge of #31765 - tshepang:shorten, r=steveklabnik 2016-02-19 14:23:29 -05:00
Steve Klabnik
1aec0af15f Rollup merge of #31764 - tshepang:overlong-sentence, r=steveklabnik 2016-02-19 14:23:28 -05:00
Steve Klabnik
6233aba372 Rollup merge of #31763 - tshepang:extraneous-word, r=steveklabnik 2016-02-19 14:23:28 -05:00
Steve Klabnik
575c85abfd Rollup merge of #31750 - GuillaumeGomez:mailmap, r=nikomatsakis
It's notably for #31707
2016-02-19 14:23:28 -05:00
Steve Klabnik
0f2675a2e6 Rollup merge of #31741 - alexcrichton:fix-ios, r=nikomatsakis
Similar to OSX, these symbols are prefixed by default.
2016-02-19 14:23:28 -05:00
Steve Klabnik
b81fdd4cd2 Rollup merge of #31737 - dhuseby:netbsd_fixes, r=alexcrichton
this fixes a small compile error when building for netbsd.
2016-02-19 14:23:28 -05:00
Steve Klabnik
206e86b947 Rollup merge of #31721 - rphmeier:err_tuplestruct_count, r=Manishearth
Fixes #31706

Also fixes a phrasing error in the diagnostic.
2016-02-19 14:23:28 -05:00
nxnfufunezn
27f8c53344 Fix error[E0518] not displayed for #[inline] on structs inside fns 2016-02-19 23:49:11 +05:30
Ariel Ben-Yehuda
addc653da5 begin implementing mir-typeck 2016-02-19 19:13:53 +02:00
bors
28a3e8bb51 Auto merge of #31742 - frewsxcv:needless-lifetimes, r=pnkfelix
These explicit lifetimes can be ommitted because of lifetime elision
rules. Instances were found using rust-clippy.
2016-02-19 13:49:46 +00:00
bors
d5e2e5fbbc Auto merge of #31738 - seanmonstar:sys-rand, r=alexcrichton 2016-02-19 10:58:53 +00:00
bors
15611f75ca Auto merge of #31736 - bluss:write-char, r=alexcrichton
fmt: Make sure write_fmt's implementation can use write_char

It looks like the Adapter inside write_fmt was never updated to forward
the write_char method.
2016-02-19 08:04:11 +00:00
Alex Crichton
d835f5bfd8 Ignore the test added in #31717
In #31717 we rebased our LLVM fork over the 3.8 release branch, and it was
thought that this fixed #31702. The testing, however, must have been erroneous,
as it unfortunately didn't fix the issue! Our MUSL nightly builders are failing
from the same assertion reported in the issue, so we at least know the test case
is a reproduction!

I believe the failure is only happening on the MUSL nightly builders because
none of the auto builders have LLVM assertions enabled, and the Linux nightly
builder *does* have assertions enabled for the binaries we generate but the
distcheck run doesn't test a compiler with LLVM assertions enabled.
2016-02-18 22:47:42 -08:00
bors
463e42701a Auto merge of #31735 - aliclark:freebsd-link-defs, r=alexcrichton
The FreeBSD linker config is missing some options present in the other BSD configs.

This seems accidental, with other BSDs having the flags added in platform-specific commits, or with the flags present from day 1.

Some other BSD commits for reference:
fcb30a0b67 (diff-db69d903e469b7769aefaa31786fc2c4R1)
0b7c4f57f6 (diff-1c7b74536ce0291d1f89953035f26a71R1)

cfd2a5cfa1
2016-02-19 05:15:17 +00:00
bors
917db28b55 Auto merge of #31716 - jseyfried:fix_privacy_for_def_err, r=nrc
Fixes #31714
2016-02-19 02:18:25 +00:00
Jeffrey Seyfried
08b9097197 Improve dummy bindings for unresolved imports 2016-02-19 00:43:52 +00:00
Vlad Ureche
88af8fa0b1 Show candidates for names not in scope
This commit adds functionality that allows the name resolution pass
to search for entities (traits/types/enums/structs) by name, in
order to show recommendations along with the errors.

For now, only E0405 and E0412 have suggestions attached, as per the
request in bug #21221, but it's likely other errors can also benefit
from the ability to generate suggestions.
2016-02-19 01:10:36 +01:00
bors
8842e28be8 Auto merge of #31684 - tmiasko:alternate-stack, r=alexcrichton
Remove alternate stack with sigaltstack before unmaping it.

Also reuse existing signal stack if already set, this is especially
useful when working with sanitizers that configure alternate stack
themselves.

This change depends on SS_DISABLE recently introduced in libc crate and updates
this git submodule accordingly.
2016-02-18 23:23:22 +00:00
Amanieu d'Antras
b4b2a259cd Add compare_exchange and compare_exchange_weak to atomic types 2016-02-18 22:38:25 +00:00
Tshepang Lekhonkhobe
31c78cfe91 doc: make the sentence more simple 2016-02-18 23:13:22 +02:00
Tshepang Lekhonkhobe
2cf226bd7e doc: reduce overlong sentence 2016-02-18 22:59:03 +02:00
bors
de366b5218 Auto merge of #31600 - nagisa:mir-msvc-seh-2, r=nikomatsakis
r? @alexcrichton for the translator changes and @nikomatsakis for the no-landing-pads pass.
2016-02-18 20:46:28 +00:00
Tshepang Lekhonkhobe
ba97cd9ad4 doc: remove a word that makes the sentence hard to read 2016-02-18 22:46:03 +02:00
Amanieu d'Antras
7ae4ee80d1 Implement read_volatile and write_volatile 2016-02-18 20:18:36 +00:00
Vadim Petrochenkov
e9506594b4 Make future-compat lint match_of_unit_variant_via_paren_dotdot deny by default 2016-02-18 22:30:57 +03:00
Amanieu d'Antras
64ddcb33f4 Add intrinsics for compare_exchange and compare_exchange_weak 2016-02-18 19:07:05 +00:00
bors
6b076c2daa Auto merge of #31734 - aliclark:bsd-stat-fixes, r=alexcrichton
In https://github.com/rust-lang/rust/issues/25155 the os::freebsd::raw stat was split for the x86 vs. x86-64 cases, which appears to have been done to implement the padding on the end of struct stat for the x86 case (the struct is otherwise the same notwistanding the size of long).

This PR de-duplicates the struct using #[cfg(target_arch = "x86")] for the __unused field, which also fixes the definitions which had sinced changed with the LFS work d088b67187.

Also changed definitions to c_long for dragonfly and freebsd where appropriate.

Also removes some unused imports that the compiler was complaining about.

dragonfly's long time_t:
https://gitweb.dragonflybsd.org/dragonfly.git/blob/a2a57c243ff8016578bc559f8603fb25bbcf1768:/lib/libstand/machine/stdint.h

freebsd's long time_t:
https://svnweb.freebsd.org/base/release/10.1.0/sys/x86/include/_types.h?view=markup
d088b67187/src/liblibc/lib.rs (L980)

freebsd's padding for i686 stat:
https://svnweb.freebsd.org/base/release/10.1.0/sys/sys/stat.h?view=markup#l139
d088b67187/src/liblibc/lib.rs (L1038)
2016-02-18 16:29:55 +00:00
Corey Farwell
5850d16d52 Remove unnecessary explicit lifetime bounds.
These explicit lifetimes can be ommitted because of lifetime elision
rules. Instances were found using rust-clippy.
2016-02-18 08:37:10 -05:00
bors
8e2a577804 Auto merge of #31394 - nikomatsakis:incr-comp-variance, r=pnkfelix
Make the dep. graph edges created by variance just mirror the constraint graph.

Note that this extends <https://github.com/rust-lang/rust/pull/31304>, so the first few commits are on a different topic.

r? @pnkfelix
2016-02-18 13:28:27 +00:00
ggomez
761e26be68 Add another email address corresponding to Guillaume Gomez account 2016-02-18 11:38:59 +01:00
bors
f075698ea5 Auto merge of #31728 - Amanieu:recoversafe_into_inner, r=alexcrichton
This allows a `FnOnce` to be wrapped in an `AssertRecoverSafe`.
2016-02-18 10:35:25 +00:00
Niko Matsakis
01ebc37fa1 Change how dep-graph edges are handled in variance to
be more fine-grained, fixing the `dep-graph-struct-signature`
test.
2016-02-18 05:27:27 -05:00
Niko Matsakis
daa7408267 Fix a weird case in the HIR map, where fields are not present in the
map. Perhaps I ought to just add them instead, but this seems harmless
enough.
2016-02-18 05:26:30 -05:00
Niko Matsakis
a80d449026 Break the variance module into submodules for ease of comprehension. 2016-02-18 05:26:30 -05:00
bors
7dd3b20119 Auto merge of #31727 - semarie:openbsd-llvm-cpu, r=alexcrichton
The initial purpose is to workaround the LLVM bug
https://llvm.org/bugs/show_bug.cgi?id=26554 for OpenBSD.

By default, the `cpu` is defined to `generic`. But with a 64bit
processor, the optimization for `generic` will use invalid asm code as
NOP (the generated code for NOP isn't a NOP).

According to #20777, "x86-64" is the right thing to do for x86_64
builds.

Closes: #31363

r? @alexcrichton
2016-02-18 07:35:49 +00:00
Tomasz Miąsko
77922b817e Remove alternate stack with sigaltstack before unmapping it.
Also reuse existing signal stack if already set, this is especially
useful when working with sanitizers that configure alternate stack
themselves.
2016-02-18 08:22:53 +01:00
bors
a9430a359f Auto merge of #31641 - petrochenkov:reach, r=alexcrichton
Fixes https://github.com/rust-lang/rust/issues/16734 and probably some other issues

This is a continuation of https://github.com/rust-lang/rust/pull/29822, but the algorithm is mostly a copy of https://github.com/rust-lang/rust/pull/29973, so
r? @alexcrichton or @nikomatsakis
2016-02-18 03:35:21 +00:00
bors
e18f7a1c5a Auto merge of #31739 - steveklabnik:rollup, r=steveklabnik
- Successful merges: #31565, #31679, #31694, #31695, #31703, #31720, #31733
- Failed merges:
2016-02-18 00:33:58 +00:00
Alex Crichton
ed015456a1 std: Prefix jemalloc symbols on iOS
Similar to OSX, these symbols are prefixed by default.
2016-02-17 16:24:00 -08:00
Sean McArthur
34dfc3991d std: restructure rand os code into sys modules 2016-02-17 16:21:32 -08:00
Jeffrey Seyfried
5ad84f1301 Replace the field imports in Module with unresolved_imports and refactor away resolved_import_count 2016-02-18 00:02:50 +00:00
Jeffrey Seyfried
845ad1b4ed Stop trying to resolve an import directive after the resolution fails 2016-02-17 23:55:00 +00:00
Steve Klabnik
27ede43c89 Rollup merge of #31733 - gkoz:strip_prefix_docs, r=alexcrichton
It wasn't fixed after copy-pasting. This probably needs to be backported to beta.
2016-02-17 18:14:36 -05:00
Steve Klabnik
b85033a7eb Rollup merge of #31720 - frewsxcv:std-mem-transmute-copy-example, r=steveklabnik
Prior to this commit, it was a trivial example that did not demonstrate
the effects of using the function.

Fixes https://github.com/rust-lang/rust/issues/31094
2016-02-17 18:14:36 -05:00
Steve Klabnik
216081d048 Rollup merge of #31703 - WiSaGaN:bugfix/fix-link-in-release-notes, r=alexcrichton 2016-02-17 18:14:36 -05:00
Steve Klabnik
96c8a67a17 Rollup merge of #31695 - oconnor663:chardocs, r=alexcrichton
Previously the docs suggested that '❤️' doesn't fit in a char because
it's 6 bytes. But that's misleading. 'a̚' also doesn't fit in a char,
even though it's only 3 bytes. The important thing is the number of code
points, not the number of bytes. Clarify the primitive char docs around
this.
2016-02-17 18:14:36 -05:00
Steve Klabnik
27ef9df824 Rollup merge of #31694 - oconnor663:insertdocs, r=steveklabnik
The first time I read the docs for `insert()`, I thought it was saying it didn't update existing *values*, and I was confused. Reword the docs to make it clear that `insert()` does update values.
2016-02-17 18:14:36 -05:00
Steve Klabnik
0a88c8fb19 Rollup merge of #31679 - GuillaumeGomez:long_error_explanation, r=Manishearth
r? @Manishearth
2016-02-17 18:14:36 -05:00