Thanks to visit codestin.com
Credit goes to github.com

Skip to content
Merged
Show file tree
Hide file tree
Changes from 2 commits
Commits
Show all changes
34 commits
Select commit Hold shift + click to select a range
b4d64b7
Initialize LLVM's AMDGPU target machine, if available.
DiamondLovesYou Jun 14, 2018
7015dfd
Add read_exact_at and write_all_at methods to FileExt on unix
drrlvn Jun 26, 2018
011eaed
factor built-in attribute parsing into submodule
euclio Jun 30, 2018
f315943
move deprecation-sanity test to ui
euclio Jun 30, 2018
5468e12
add label to unknown meta item error
euclio Jun 30, 2018
e89db30
Do not suggest changes to str literal if it isn't one
estebank Jul 2, 2018
6e5b9c1
Get rid of `TyImplTraitExistential`
oli-obk Jun 29, 2018
75a6fde
Update rustdoc
oli-obk Jul 2, 2018
3779a4c
Emit column info in debuginfo for non msvc like targets
est31 Jul 2, 2018
79d8d08
incr.comp.: Take names of children into account when computing the IC…
michaelwoerister Jul 2, 2018
73166f7
Fill in tracking issue number for read_exact_at/write_all_at
drrlvn Jul 2, 2018
59f2edb
add outlives annotations to `BTreeMap`
nikomatsakis Feb 20, 2018
ddc1d29
bootstrap: tests should use rustc from config.toml
mnd Jul 1, 2018
29851ba
add entry for cargo-metadata feature to RELEASES
euclio Jul 2, 2018
9797665
Make Stdio handle UnwindSafe
estk Jul 1, 2018
f5570d0
Make explicit that assemble is not run from CLI
Mark-Simulacrum Jul 2, 2018
d914574
Fix the tool's path in toolstate verification.
kennytm Jul 2, 2018
20231d7
Fixed detection of test-fail for doctests.
kennytm Jul 2, 2018
689cffa
Run "tools" job on PR when commit message starts with "Update RLS/mir…
kennytm Jul 2, 2018
9eda4aa
Change --keep-stage to apply more
Mark-Simulacrum Jul 2, 2018
447f1f3
Avoid sorting the item_ids array the StableHash impl of hir::Mod.
michaelwoerister Jul 3, 2018
7fa03fb
Rollup merge of #51548 - DiamondLovesYou:amdgpu-target-machine, r=ale…
pietroalbini Jul 3, 2018
a3fc979
Rollup merge of #51809 - drrlvn:rw_exact_all_at, r=alexcrichton
pietroalbini Jul 3, 2018
451560e
Rollup merge of #51914 - nikomatsakis:nll-fix-issue-issue-btreemap-an…
pietroalbini Jul 3, 2018
bd0fe73
Rollup merge of #51958 - euclio:attr-refactor, r=petrochenkov
pietroalbini Jul 3, 2018
0ceeb1b
Rollup merge of #51973 - estk:master, r=abonander
pietroalbini Jul 3, 2018
47eee24
Rollup merge of #51977 - mnd:fix-bootstrap-test-with-local-stage0, r=…
pietroalbini Jul 3, 2018
5195132
Rollup merge of #51978 - estebank:issue-48364, r=oli-obk
pietroalbini Jul 3, 2018
f91b02b
Rollup merge of #51979 - oli-obk:lowering_cleanups4, r=nikomatsakis
pietroalbini Jul 3, 2018
45cd78a
Rollup merge of #51980 - est31:columns, r=alexcrichton
pietroalbini Jul 3, 2018
b69058d
Rollup merge of #51982 - michaelwoerister:hash-modules-properly, r=ni…
pietroalbini Jul 3, 2018
5feb26c
Rollup merge of #51997 - euclio:release-notes, r=Aaronepower
pietroalbini Jul 3, 2018
6af4397
Rollup merge of #52004 - kennytm:toolstate-fixes, r=Mark-Simulacrum
pietroalbini Jul 3, 2018
492518f
Rollup merge of #52006 - Mark-Simulacrum:keep-stage-fix, r=alexcrichton
pietroalbini Jul 3, 2018
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
22 changes: 22 additions & 0 deletions src/libstd/io/stdio.rs
Original file line number Diff line number Diff line change
Expand Up @@ -712,9 +712,31 @@ pub fn _eprint(args: fmt::Arguments) {

#[cfg(test)]
mod tests {
use panic::{UnwindSafe, RefUnwindSafe};
use thread;
use super::*;

#[test]
fn stdout_unwind_safe() {
assert_unwind_safe::<Stdout>();
}
#[test]
fn stdoutlock_unwind_safe() {
assert_unwind_safe::<StdoutLock>();
assert_unwind_safe::<StdoutLock<'static>>();
}
#[test]
fn stderr_unwind_safe() {
assert_unwind_safe::<Stderr>();
}
#[test]
fn stderrlock_unwind_safe() {
assert_unwind_safe::<StderrLock>();
assert_unwind_safe::<StderrLock<'static>>();
}

fn assert_unwind_safe<T: UnwindSafe + RefUnwindSafe>() {}

#[test]
#[cfg_attr(target_os = "emscripten", ignore)]
fn panic_doesnt_poison() {
Expand Down
4 changes: 4 additions & 0 deletions src/libstd/sys_common/remutex.rs
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,7 @@ use marker;
use ops::Deref;
use sys_common::poison::{self, TryLockError, TryLockResult, LockResult};
use sys::mutex as sys;
use panic::{UnwindSafe, RefUnwindSafe};

/// A re-entrant mutual exclusion
///
Expand All @@ -28,6 +29,9 @@ pub struct ReentrantMutex<T> {
unsafe impl<T: Send> Send for ReentrantMutex<T> {}
unsafe impl<T: Send> Sync for ReentrantMutex<T> {}

impl<T> UnwindSafe for ReentrantMutex<T> {}
impl<T> RefUnwindSafe for ReentrantMutex<T> {}


/// An RAII implementation of a "scoped lock" of a mutex. When this structure is
/// dropped (falls out of scope), the lock will be unlocked.
Expand Down