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
Gleb Kozyrev
409bffa654
Add mutual PartialEq and PartialOrd impls for Path[Buf] and OsStr[ing]
2016-02-18 16:08:30 +02:00
Gleb Kozyrev
ccad5449ff
Add mutual PartialOrd impls for Path and PathBuf
2016-02-18 16:08:11 +02:00
Gleb Kozyrev
27be4336d9
Impl AsRef<Path> for Cow<OsStr>
2016-02-18 16:04:28 +02:00
Gleb Kozyrev
9fb4fcac82
Add mutual PartialEq and PartialCmp impls for OsStr, OsString
2016-02-18 16:03:42 +02: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
Steve Klabnik
9f0e39ba16
Rollup merge of #31565 - SDX2000:docfixes4, r=steveklabnik
...
See title and diff for more information.
2016-02-17 18:14:35 -05:00
Vadim Petrochenkov
fadc95e60a
Check reachability insead of publicity for fields and inherent impl items
...
Purely for consistency with other items, it doesn't make any semantic difference
2016-02-18 01:10:21 +03:00
Vadim Petrochenkov
34737e3536
Add more tests for unnameable reachable items
2016-02-18 01:04:28 +03:00
Vadim Petrochenkov
767a447470
privacy: Mark reachable but unnameable items as reachable
2016-02-18 01:04:28 +03:00
Dave Huseby
aeda8445a7
fixes a small netbsd compile error
2016-02-17 21:40:33 +00:00
Ulrik Sverdrup
403fc4186e
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-17 22:26:44 +01:00
Simonas Kazlauskas
1752615591
MSVC SEH in MIR is implemented here
2016-02-17 21:46:05 +02:00
bors
4d3eebff9d
Auto merge of #31707 - GuillaumeGomez:macro_name, r=sfackler
...
I'm wondering if instead of a second help message, a note would be better. I let it up to reviewers.
2016-02-17 19:15:53 +00:00
Ali Clark
6115f2effe
bring freebsd linker config up-to-date (same as dragonfly)
2016-02-17 18:46:16 +00:00
Gleb Kozyrev
f82c984764
Update Path::strip_prefix
doc
2016-02-17 20:16:12 +02:00
Ali Clark
90afb85a0c
re-add freebsd padding
...
reproduces the padding found here:
https://svnweb.freebsd.org/base/release/10.1.0/sys/sys/stat.h?view=markup#l139
2016-02-17 16:59:03 +00:00
Ali Clark
3c534188f0
time_t is long on freebsd and dragonfly (and nsec should be long)
...
This becomes less relevant for dragonfly a i686 support is dropped since
release 40, but using long allows some compatibility for older versions.
2016-02-17 16:55:43 +00:00
Tobias Bucher
8fd7469990
Implement Clone
for std::vec::IntoIter
2016-02-17 17:43:54 +01:00
bors
2051a92134
Auto merge of #31718 - apasel422:issue-31711, r=bluss
...
This changes the performance of `drop` from linear to constant time for such `HashMap`s.
Closes #31711 .
r? @bluss
2016-02-17 16:18:54 +00:00
Sandeep Datta
1536195ce6
Made v2 mutable so that we can actually truncate it.
2016-02-17 20:47:24 +05:30
Ali Clark
c99409f793
unfork freebsd stat definitions, fixes x86
2016-02-17 14:10:02 +00:00
Ali Clark
cf144d16e9
remove unused import from dragonfly os raw
2016-02-17 14:09:22 +00:00
bors
b54770c245
Auto merge of #31696 - apasel422:placement, r=pnkfelix
...
CC #30172 .
r? @pnkfelix
CC @nagisa
2016-02-17 13:25:15 +00:00
Amanieu d'Antras
b6a65df6d5
Add into_inner to AssertRecoverSafe
2016-02-17 11:29:18 +00:00
Sébastien Marie
6cb41e2e82
specify the cpu type for LLVM for OpenBSD target
...
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
2016-02-17 11:30:42 +01:00
bors
f4046deb20
Auto merge of #31666 - dirk:dirk/clarify-memory-arrangement-in-vec-docs, r=steveklabnik
...
Tweak documentation to clarify the structure of `Vec`s as contiguous arrays of items in memory.
Closes #31554 ; contributes to #29380 .
r? @steveklabnik
2016-02-17 09:20:11 +00:00
bors
0d1cd9bd6a
Auto merge of #31685 - petrochenkov:patrefact2, r=eddyb
...
And split `PatKind::Enum` into `PatKind::TupleStruct` and `PatKind::Path`.
This is the HIR part of https://github.com/rust-lang/rust/pull/31581 .
This is also kind of a preparation for https://github.com/rust-lang/rfcs/pull/1492 .
r? @eddyb
2016-02-17 06:01:49 +00:00
bors
82f30d2a36
Auto merge of #31717 - alexcrichton:llvmup2, r=brson
...
This commit rebases our LLVM submodule on the most recent tip of the
`release_38` branch of LLVM. There's been a few fixes and this notably fixes the
assertion error in #31702 .
Closes #31702
2016-02-17 03:25:45 +00:00