Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Rustup #1630

Merged
merged 4 commits into from
Nov 19, 2020
Merged

Rustup #1630

Show file tree
Hide file tree
Changes from all commits
Commits
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
2 changes: 1 addition & 1 deletion rust-version
Original file line number Diff line number Diff line change
@@ -1 +1 @@
12f0dba618e761c987142474435dff95ab177f3c
bf469eb6c20ccea05400a1942c70343f36705e1c
2 changes: 2 additions & 0 deletions src/shims/posix/linux/dlsym.rs
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,8 @@ impl Dlsym {
pub fn from_str(name: &str) -> InterpResult<'static, Option<Dlsym>> {
Ok(match &*name {
"__pthread_get_minstack" => None,
"getrandom" => None, // std falls back to syscall(SYS_getrandom, ...) when this is NULL.
"statx" => None, // std falls back to syscall(SYS_statx, ...) when this is NULL.
_ => throw_unsup_format!("unsupported Linux dlsym: {}", name),
})
}
Expand Down
4 changes: 3 additions & 1 deletion src/shims/posix/linux/foreign_items.rs
Original file line number Diff line number Diff line change
Expand Up @@ -208,7 +208,9 @@ fn getrandom<'tcx>(

// The only supported flags are GRND_RANDOM and GRND_NONBLOCK,
// neither of which have any effect on our current PRNG.
this.read_scalar(flags)?.to_i32()?;
let _flags = this.read_scalar(flags)?;
// FIXME: Check that this is an integer type of the right size.
// Currently, some callers pass i32 and some usize, is that even allowed?

this.gen_random(ptr, len)?;
this.write_scalar(Scalar::from_machine_usize(len, this), dest)?;
Expand Down
2 changes: 1 addition & 1 deletion tests/run-pass/backtrace-std.rs
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
// normalize-stderr-test "at .*/(rust[^/]*|checkout)/library/" -> "at RUSTLIB/"
// normalize-stderr-test "RUSTLIB/(.*):\d+"-> "RUSTLIB/$1:LL"
// normalize-stderr-test "RUSTLIB/([^:]*):\d+:\d+"-> "RUSTLIB/$1:LL:CC"
// normalize-stderr-test "::<.*>" -> ""
// compile-flags: -Zmiri-disable-isolation

Expand Down
28 changes: 14 additions & 14 deletions tests/run-pass/backtrace-std.stderr
Original file line number Diff line number Diff line change
@@ -1,28 +1,28 @@
0: func_d
at $DIR/backtrace-std.rs:18
at $DIR/backtrace-std.rs:18:45
1: func_c
at $DIR/backtrace-std.rs:17
at $DIR/backtrace-std.rs:17:45
2: func_b
at $DIR/backtrace-std.rs:11
at $DIR/backtrace-std.rs:11:48
3: func_a
at $DIR/backtrace-std.rs:10
at $DIR/backtrace-std.rs:10:45
4: main
at $DIR/backtrace-std.rs:21
at $DIR/backtrace-std.rs:21:19
5: <fn() as std::ops::FnOnce<()>>::call_once - shim(fn())
at RUSTLIB/core/src/ops/function.rs:LL
at RUSTLIB/core/src/ops/function.rs:LL:CC
6: std::sys_common::backtrace::__rust_begin_short_backtrace
at RUSTLIB/std/src/sys_common/backtrace.rs:LL
at RUSTLIB/std/src/sys_common/backtrace.rs:LL:CC
7: std::rt::lang_start::{closure#0}
at RUSTLIB/std/src/rt.rs:LL
at RUSTLIB/std/src/rt.rs:LL:CC
8: std::ops::function::impls::call_once
at RUSTLIB/core/src/ops/function.rs:LL
at RUSTLIB/core/src/ops/function.rs:LL:CC
9: std::panicking::r#try::do_call
at RUSTLIB/std/src/panicking.rs:LL
at RUSTLIB/std/src/panicking.rs:LL:CC
10: std::panicking::r#try
at RUSTLIB/std/src/panicking.rs:LL
at RUSTLIB/std/src/panicking.rs:LL:CC
11: std::panic::catch_unwind
at RUSTLIB/std/src/panic.rs:LL
at RUSTLIB/std/src/panic.rs:LL:CC
12: std::rt::lang_start_internal
at RUSTLIB/std/src/rt.rs:LL
at RUSTLIB/std/src/rt.rs:LL:CC
13: std::rt::lang_start
at RUSTLIB/std/src/rt.rs:LL
at RUSTLIB/std/src/rt.rs:LL:CC