Skip to content

Added pointer checking to sanity checks - #53831

Merged
bors merged 1 commit into
rust-lang:masterfrom
TheDarkula:pointer-check
Sep 3, 2018
Merged

Added pointer checking to sanity checks#53831
bors merged 1 commit into
rust-lang:masterfrom
TheDarkula:pointer-check

Conversation

@TheDarkula

Copy link
Copy Markdown

@rust-highfive rust-highfive added the S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. label Aug 30, 2018
@TheDarkula

Copy link
Copy Markdown
Author

cc @RalfJung

Comment thread src/librustc_mir/interpret/validity.rs Outdated
@rust-highfive

Copy link
Copy Markdown
Contributor

The job x86_64-gnu-llvm-5.0 of your PR failed on Travis (raw log). Through arcane magic we have determined that the following fragments from the build log may contain information about the problem.

Click to expand the log.
[00:50:26] ....................................................................................................
[00:50:29] ....................................................................................................
[00:50:32] ....................................................................................................
[00:50:36] ........i...........................................................................................
[00:50:41] ..............................................................F.....F...............................
[00:50:47] .................ii.iii.............................................................................
[00:50:50] ....................................................................................................
[00:50:52] ....................................................................................................
[00:50:55] ....................................................................................................
---
[00:52:17] .....................................................................i..............................
[00:52:20] ....................................................................................................
[00:52:23] ....................................................................................................
[00:52:26] ....................................................................................................
: "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2/bin/rustc" "/checkout/src/test/ui/consts/const-eval/ub-ptr-in-usize.rs" "--target=x86_64-unknown-linux-gnu" "--error-format" "json" "-Zui-testing" "-C" "prefer-dynamic" "-o" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/consts/const-eval/ub-ptr-in-usize/a" "-Crpath" "-O" "-Zunstable-options" "-Lnative=/checkout/obj/build/x86_64-unknown-linux-gnu/native/rust-test-helpers" "-L" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/consts/const-eval/ub-ptr-in-usize/auxiliary" "-A" "unused"
[00:52:28] ------------------------------------------
[00:52:28] 
[00:52:28] ------------------------------------------
[00:52:28] stderr:
[00:52:28] stderr:
[00:52:28] ------------------------------------------
[00:52:28] {"message":"this constant likely exhibits undefined behavior","code":{"code":"E0080","explanation":"\nThis error indicates that the compiler was unable to sensibly evaluate an\nconstant expression that had to be evaluated. Attempting to divide by 0\nor causing integer overflow are two ways to induce this error. For example:\n\n```compile_fail,E0080\nenum Enum {\n    X = (1 << 500),\n    Y = (1 / 0)\n}\n```\n\nEnsure that the expressions given can be evaluated as the desired integer type.\nSee the FFI section of the Reference for more information about using a custom\ninteger type:\n\nhttps://doc.rust-lang.org/reference.html#ffi-attributes\n"},"level":"error","spans":[{"file_name":"/checkout/src/test/ui/consts/const-eval/ub-ptr-in-usize.rs","byte_start":582,"byte_end":636,"line_start":19,"line_end":19,"column_start":1,"column_end":55,"is_primary":true,"text":[{"text":"const PTR_AS_USIZE: usize = unsafe { Foo { a: &1 }.b};","highlight_start":1,"highlight_end":55}],"label":"type validation failed: encountered a pointer, but expected the type usize","suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[{"message":"The rules on what exactly is undefined behavior aren't clear, so this check might be overzealous. Please open an issue on the rust compiler repository if you believe it should not be considered undefined behavior","code":null,"level":"note","spans":[],"children":[],"rendered":null}],"rendered":"error[E0080]: this constant likely exhibits undefined behavior\n  --> /checkout/src/test/ui/consts/const-eval/ub-ptr-in-usize.rs:19:1\n   |\nLL | const PTR_AS_USIZE: usize = unsafe { Foo { a: &1 }.b};\n   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ type validation failed: encountered a pointer, but expected the type usize\n   |\n   = note: The rules on what exactly is undefined behavior aren't clear, so this check might be overzealous. Please open an issue on the rust compiler repository if you believe it should not be considered undefined behavior\n\n"}
[00:52:28] {"message":"aborting due to previous error","code":null,"level":"error","spans":[],"children":[],"rendered":"error: aborting due to previous error\n\n"}
[00:52:28] {"message":"For more information about this error, try `rustc --explain E0080`.","code":null,"level":"","spans":[],"children":[],"rendered":"For more information about this error, try `rustc --explain E0080`.\n"}
[00:52:28] ------------------------------------------
[00:52:28] 
[00:52:28] 
[00:52:28] thags" "" "--adb-path" "adb" "--adb-test-dir" "/data/tmp/work" "--android-cross-path" "" "--color" "always"
[00:52:28] 
[00:52:28] 
[00:52:28] failed to run: /checkout/obj/build/bootstrap/debug/bootstrap test
[00:52:28] Build completed unsuccessfully in 0:03:21
[00:52:28] Build completed unsuccessfully in 0:03:21
[00:52:28] make: *** [check] Error 1
[00:52:28] Makefile:58: recipe for target 'check' failed

The command "stamp sh -x -c "$RUN_SCRIPT"" exited with 2.
travis_time:start:03ff7587
$ date && (curl -fs --head https://google.com | grep ^Date: | sed 's/Date: //g' || true)
---
travis_time:end:0beabae2:start=1535655199657479966,finish=1535655199667837244,duration=10357278
travis_fold:end:after_failure.4
travis_fold:start:after_failure.5
travis_time:start:103c6542
$ cat ./obj/build/x86_64-unknown-linux-gnu/native/asan/build/lib/asan/clang_rt.asan-dynamic-i386.vers || true
cat: ./obj/build/x86_64-unknown-linux-gnu/native/asan/build/lib/asan/clang_rt.asan-dynamic-i386.vers: No such file or directory
travis_fold:end:after_failure.5
travis_fold:start:after_failure.6
travis_time:start:0ffb9f64
$ dmesg | grep -i kill

I'm a bot! I can only do what humans tell me to, so if this was not helpful or you have suggestions for improvements, please ping or otherwise contact @TimNN. (Feature Requests)

@bors

bors commented Aug 31, 2018

Copy link
Copy Markdown
Collaborator

☔ The latest upstream changes (presumably #53779) made this pull request unmergeable. Please resolve the merge conflicts.

@TheDarkula
TheDarkula force-pushed the pointer-check branch 3 times, most recently from d595ef6 to d396004 Compare August 31, 2018 12:35
@oli-obk

oli-obk commented Aug 31, 2018

Copy link
Copy Markdown
Contributor

@bors r+

@bors

bors commented Aug 31, 2018

Copy link
Copy Markdown
Collaborator

📌 Commit d39600432c1079352481dc31b4ab7d293fa8cb22 has been approved by oli-obk

@bors bors added S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. and removed S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. labels Aug 31, 2018
@oli-obk

oli-obk commented Aug 31, 2018

Copy link
Copy Markdown
Contributor

@bors r-

@bors bors added S-waiting-on-author Status: This is awaiting some action (such as code changes or more information) from the author. and removed S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. labels Aug 31, 2018
@oli-obk

oli-obk commented Aug 31, 2018

Copy link
Copy Markdown
Contributor

@bors try let's crater this first. This is a breaking change for code that drives dangerously close to UB

@bors

bors commented Aug 31, 2018

Copy link
Copy Markdown
Collaborator

⌛ Trying commit d39600432c1079352481dc31b4ab7d293fa8cb22 with merge aa245a5862056b681d2ccdb178f58891108cd3a6...

@rust-highfive

Copy link
Copy Markdown
Contributor

The job x86_64-gnu-llvm-5.0 of your PR failed on Travis (raw log). Through arcane magic we have determined that the following fragments from the build log may contain information about the problem.

Click to expand the log.
[00:46:50] ....................................................................................................
[00:46:53] ....................................................................................................
[00:46:56] ....................................................................................................
[00:47:00] ........i...........................................................................................
[00:47:04] .......................F............................................................................
[00:47:07] .i.......i..........................................................................................
[00:47:13] ....................................................................................................
[00:47:16] ....................................................................................................
[00:47:18] ....................................................................................................
[00:47:20] ....................................................................................................
---
[00:48:51] 
[00:48:51] ---- [ui] ui/consts/const-eval/const-pointer-values-in-various-types.rs stdout ----
[00:48:51] diff of stderr:
[00:48:51] 
[00:48:51] 1 error[E0080]: this constant likely exhibits undefined behavior
[00:48:51] -   --> $DIR/const-pointer-values-in-int-types.rs:24:5
[00:48:51] +   --> $DIR/const-pointer-values-in-various-types.rs:24:5
[00:48:51] 3    |
[00:48:51] 4 LL |     const I32_REF_USIZE_UNION: usize = unsafe { Nonsense { int_32_ref: &3 }.u };
[00:48:51] 5    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ type validation failed: encountered a pointer, but expected the type usize
[00:48:51] 
[00:48:51] 7    = note: The rules on what exactly is undefined behavior aren't clear, so this check might be overzealous. Please open an issue on the rust compiler repository if you believe it should not be considered undefined behavior
[00:48:51] 9 error: this constant cannot be used
[00:48:51] -   --> $DIR/const-pointer-values-in-int-types.rs:27:5
[00:48:51] +   --> $DIR/const-pointer-values-in-various-types.rs:27:5
[00:48:51] 11    |
[00:48:51] 11    |
[00:48:51] 12 LL |     const I32_REF_U8_UNION: u8 = unsafe { Nonsense { int_32_ref: &3 }.uint_8 };
[00:48:51] 
[00:48:51] 17    = note: #[deny(const_err)] on by default
[00:48:51] 18 
[00:48:51] 19 error: this constant cannot be used
[00:48:51] 19 error: this constant cannot be used
[00:48:51] -   --> $DIR/const-pointer-values-in-int-types.rs:30:5
[00:48:51] +   --> $DIR/const-pointer-values-in-various-types.rs:30:5
[00:48:51] 21    |
[00:48:51] 22 LL |     const I32_REF_U16_UNION: u16 = unsafe { Nonsense { int_32_ref: &3 }.uint_16 };
[00:48:51] 
[00:48:51] 
[00:48:51] 25    |                                             a raw memory access tried to access part of a pointer value as raw bytes
[00:48:51] 27 error: this constant cannot be used
[00:48:51] -   --> $DIR/const-pointer-values-in-int-types.rs:33:5
[00:48:51] +   --> $DIR/const-pointer-values-in-various-types.rs:33:5
[00:48:51] 29    |
[00:48:51] 29    |
[00:48:51] 30 LL |     const I32_REF_U32_UNION: u32 = unsafe { Nonsense { int_32_ref: &3 }.uint_32 };
[00:48:511] +   --> $DIR/const-pointer-values-in-various-types.rs:42:5
[00:48:51] 51    |
[00:48:51] 52 LL |     const I32_REF_I8_UNION: i8 = unsafe { Nonsense { int_32_ref: &3 }.int_8 };
[00:48:51] 
[00:48:51] 
[00:48:51] 55    |                                           a raw memory access tried to access part of a pointer value as raw bytes
[00:48:51] 57 error: this constant cannot be used
[00:48:51] -   --> $DIR/const-pointer-values-in-int-types.rs:45:5
[00:48:51] +   --> $DIR/const-pointer-values-in-various-types.rs:45:5
[00:48:51] 59    |
[00:48:51] 59    |
[00:48:51] 60 LL |     const I32_REF_I16_UNION: i16 = unsafe { Nonsense { int_32_ref: &3 }.int_16 };
[00:48:51] 
[00:48:51] 
[00:48:51] 63    |                                             a raw memory access tried to access part of a pointer value as raw bytes
[00:48:51] 65 error: this constant cannot be used
[00:48:51] -   --> $DIR/const-pointer-values-in-int-types.rs:48:5
[00:48:51] +   --> $DIR/const-pointer-values-in-various-types.rs:48:5
[00:48:51] 67    |
[00:48:51] 67    |
[00:48:51] 68 LL |     const I32_REF_I32_UNION: i32 = unsafe { Nonsense { int_32_ref: &3 }.int_32 };
[00:48:51] 
[00:48:51] 
[00:48:51] 71    |                                             a raw memory access tried to access part of a pointer value as raw bytes
[00:48:51] 72 
[00:48:51] 73 error[E0080]: this constant likely e:48:51] 177    |
[00:48:51] 178 LL |     const STR_I32_UNION: i32 = unsafe { Nonsense { stringy: "3" }.int_32 };
[00:48:51] 
[00:48:51] 
[00:48:51] 181    |                                         a raw memory access tried to access part of a pointer value as raw bytes
[00:48:51] 182 
[00:48:51] 183 error[E0080]: this constant likely exhibits undefined behavior
[00:48:51] -   --> $DIR/const-pointer-values-in-int-types.rs:93:5
[00:48:51] +   --> $DIR/const-pointer-values-in-various-types.rs:93:5
[00:48:51] 185    |
[00:48:51] 186 LL |     const STR_I64_UNION: i64 = unsafe { Nonsense { stringy: "3" }.int_64 };
[00:48:51] 187    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ type validation failed: encountered a pointer, but expected the type i64
[00:48:51] 
[00:48:51] 189    = note: The rules on what exactly is undefined behavior aren't clear, so this check might be overzealous. Please open an issue on the rust compiler repository if you believe it should not be considered undefined behavior
[00:48:51] 191 error: this constant cannot be used
[00:48:51] -   --> $DIR/const-pointer-values-in-int-types.rs:96:5
[00:48:51] +   --> $DIR/const-pointer-values-in-various-types.rs:96:5
[00:48:51] 193    |
[00:48:51] 193    |
[00:48:51] 194 LL |     const STR_I128_UNION: i128 = unsafe { Nonsense { stringy: "3" }.int_128 };
[00:48:51] 
[00:48:51] 
[00:48:51] 197    |                                           a raw memory access tried to access part of a pointer value as raw bytes
[00:48:51] 199 error: this constant cannot be used
[00:48:51] -   --> $DIR/const-pointer-values-in-int-types.rs:99:5
[00:48:51] +   --> $DIR/const-pointer-values-in-various-types.rs:99:5
[00:48:51] 201    |
[00:48:51] 201    |
[00:48:51] 202 LL |     const STR_F32_UNION: f32 = unsafe { Nonsense { stringy: "3" }.float_32 };
[00:48:51] 
[00:48:51] 
[00:48:51] 205    |                                         a raw memory access tried to access part of a pointer value as raw bytes
[00:48:51] 206 
[00:48:51] 207 error[E0080]: this constant likely exhibits undefined behavior
[00:48:51] -   --> $DIR/const-pointer-values-in-int-types.rs:102:5
[00:48:51] +   --> $DIR/const-pointer-values-in-various-types.rs:102:5
[00:48:51] 209    |
[00:48:51] 210 LL |     const STR_F64_UNION: f64 = unsafe { Nonsense { stringy: "3" }.float_64 };
[00:48:51] 211    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ type validation failed: encountered a pointer, but expected the type f64
[00:48:51] 
[00:48:51] 213    = note: The rules on what exactly is undefined behavior aren't clear, so this check might be overzealous. Please open an issue on the rust compiler repository if you believe it should not be considered undefined behavior
[00:48:51] 215 error: this constant cannot be used
[00:48:51] -   --> $DIR/const-pointer-values-in-int-types.rs:105:5
[00:48:51] +   --> $DIR/const-pointer-values-in-various-types.rs:105:5
[00:48:51] 217    |
[00:48:51] 217    |
[00:48:51] 218 LL |     const STR_BOOL_UNION: bool = unsafe { Nonsense { stringy: "3" }.truthy_falsey };
[00:48:51] 
[00:48:51] 
[00:48:51] 221    |                                           a raw memory access tried to access part of a pointer value as raw bytes
[00:48:51] 223 error: this constant cannot be used
[00:48:51] -   --> $DIR/const-pointer-values-in-int-types.rs:108:5
[00:48:51] +   --> $DIR/const-pointer-values-in-various-types.rs:108:5
[00:48:51] 225    |
[00:48:51] 225    |
[00:48:51] 226 LL |     const STR_CHAR_UNION: char = unsafe { Nonsense { stringy: "3" }.character };
[00:48:51] 
[00:48:51] 
[00:48:51] The actual stderr differed from the expected stderr.
[00:48:51] Actual stderr saved to /checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/consts/const-eval/const-pointer-values-in-various-types/const-pointer-values-in-various-types.stderr
[00:48:51] Actual stderr saved to /checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/consts/const-eval/const-pointer-values-in-various-types/const-pointer-values-in-various-types.stderr
[00:48:51] To update references, rerun the tests and pass the `--bless` flag
[00:48:51] To only update this specific test, also pass `--test-args consts/const-eval/const-pointer-values-in-various-types.rs`
[00:48:51] error: 1 errors occurred comparing output.
[00:48:51] status: exit code: 1
[00:48:51] status: exit code: 1
[00:48:51] command: "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2/bin/rustc" "/checkout/src/test/ui/consts/const-eval/const-pointer-values-in-various-types.rs" "--target=x86_64-unknown-linux-gnu" "--error-format" "json" "-Zui-testing" "-C" "prefer-dynamic" "-o" "/checkout/tered a pointer, but expected the type usize","suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[{"message":"The rules on what exactly is undefined behavior aren't clear, so this check might be overzealous. Please open an issue on the rust compiler repository if you believe it should not be considered undefined behavior","code":null,"level":"note","spans":[],"children":[],"rendered":null}],"rendered":"error[E0080]: this constant likely exhibits undefined behavior\n  --> /checkout/src/test/ui/consts/const-eval/const-pointer-values-in-various-types.rs:24:5\n   |\nLL |     const I32_REF_USIZE_UNION: usize = unsafe { Nonsense { int_32_ref: &3 }.u };\n   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ type validation failed: encountered a pointer, but expected the type usize\n   |\n   = note: The rules on what exactly is undefined behavior aren't clear, so this check might be overzealous. Please open an issue on the rust compiler repository if you believe it should not be considered undefined behavior\n\n"}
[00:48:51] {"message":"this constant cannot be used","code":{"code":"const_err","explanation":null},"level":"error","spans":[{"file_name":"/checkout/src/test/ui/consts/const-eval/const-pointer-values-in-various-types.rs","byte_start":566,"byte_end":600,"line_start":27,"line_end":27,"column_start":43,"column_end":77,"is_primary":false,"text":[{"text":"    const I32_REF_U8_UNION: u8 = unsafe { Nonsense { int_32_ref: &3 }.uint_8 };","highlight_start":43,"highlight_end":77}],"label":"a raw memory access tried to access part of a pointer value as raw bytes"5,"highlight_end":80}],"label":"a raw memory access tried to access part of a pointer value as raw bytes","suggested_replacement":null,"suggestion_applicability":null,"expansion":null},{"file_name":"/checkout/src/test/ui/consts/const-eval/const-pointer-values-in-various-types.rs","byte_start":653,"byte_end":731,"line_start":30,"line_end":30,"column_start":5,"column_end":83,"is_primary":true,"text":[{"text":"    const I32_REF_U16_UNION: u16 = unsafe { Nonsense { int_32_ref: &3 }.uint_16 };","highlight_start":5,"highlight_end":83}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[],"rendered":"error: this constant cannot be used\n  --> /checkout/src/test/ui/consts/const-eval/const-pointer-values-in-various-types.rs:30:5\n   |\nLL |     const I32_REF_U16_UNION: u16 = unsafe { Nonsense { int_32_ref: &3 }.uint_16 };\n   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^-----------------------------------^^^\n   |                                             |\n   |                                             a raw memory access tried to access part of a pointer value as raw bytes\n\n"}
[00:48:51] {"message":"this constant cannot be used","code":{"code":"const_err","explanation":null},"level":"error","spans":[{"file_name":"/checkout/src/test/ui/consts/const-eval/const-pointer-values-in-various-types.rs","byte_start":821,"byte_end":856,"line_start":33,"line_end":33,"column_start":45,"column_end":80,"is_primary":false,"text":[{"text":"    const I32_REF_U32_UNION: u32 = unsafe { Nonsense { int_32_ref: &3 }.uint_32 };","highlight_start":45,"highlight_end":80}],"label":"a raw memory ac information about using a custom\ninteger type:\n\nhttps://doc.rust-lang.org/reference.html#ffi-attributes\n"},"level":"error","spans":[{"file_name":"/checkout/src/test/ui/consts/const-eval/const-pointer-values-in-various-types.rs","byte_start":909,"byte_end":987,"line_start":36,"line_end":36,"column_start":5,"column_end":83,"is_primary":true,"text":[{"text":"    const I32_REF_U64_UNION: u64 = unsafe { Nonsense { int_32_ref: &3 }.uint_64 };","highlight_start":5,"highlight_end":83}],"label":"type validation failed: encountered a pointer, but expected the type u64","suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[{"message":"The rules on what exactly is undefined behavior aren't clear, so this check might be overzealous. Please open an issue on the rust compiler repository if you believe it should not be considered undefined behavior","code":null,"level":"note","spans":[],"children":[],"rendered":null}],"rendered":"error[E0080]: this constant likely exhibits undefined behavior\n  --> /checkout/src/test/ui/consts/const-eval/const-pointer-values-in-various-types.rs:36:5\n   |\nLL |     const I32_REF_U64_UNION: u64 = unsafe { Nonsense { int_32_ref: &3 }.uint_64 };\n   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ type validation failed: encountered a pointer, but expected the type u64\n   |\n   = note: The rules on what exactly is undefined behavior aren't clear, so this check might be overzealous. Please open an issue on the rust compiler repository if you believe it should not be considered undefined behavior\n\n"}
[00:48:51] {"message":"this con"byte_end":1389,"line_start":45,"line_end":45,"column_start":5,"column_end":82,"is_primary":true,"text":[{"text":"    const I32_REF_I16_UNION: i16 = unsafe { Nonsense { int_32_ref: &3 }.int_16 };","highlight_start":5,"highlight_end":82}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[],"rendered":"error: this constant cannot be used\n  --> /checkout/src/test/ui/consts/const-eval/const-pointer-values-in-various-types.rs:45:5\n   |\nLL |     const I32_REF_I16_UNION: i16 = unsafe { Nonsense { int_32_ref: &3 }.int_16 };\n   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^----------------------------------^^^\n   |                                             |\n   |                                             a raw memory access tried to access part of a pointer value as raw bytes\n\n"}
[00:48:51] {"message":"this constant cannot be used","code":{"code":"const_err","explanation":null},"level":"error","spans":[{"file_name":"/checkout/src/test/ui/consts/const-eval/const-pointer-values-in-various-types.rs","byte_start":1479,"byte_end":1513,"line_start":48,"line_end":48,"column_start":45,"column_end":79,"is_primary":false,"text":[{"text":"    const I32_REF_I32_UNION: i32 = unsafe { Nonsense { int_32_ref: &3 }.int_32 };","highlight_start":45,"highlight_end":79}],"label":"a raw memory access tried to access part of a pointer value as raw bytes","suggested_replacement":null,"suggestion_applicability":null,"expansion":null},{"file_name":"/checkout/src/test/ui/consts/const-eval/const-pointer-values-in-various-types.rs","byte_start":1439,"byte_end":1516,"line_start":48,"line_end":48,"column_start":5,"column_end":82,"is_primary":true,"text":[{"text":"    const I32_REF_I32_UNION: i32 = unsafe { Nonsense { int_32_ref: &3 }.int_32 };","highlight_start":5,"highlight_end":82}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[],"rendered":"error: this constant cannot be used\n  --> /checkout/src/test/ui/consts/const-eval/const-pointer-values-in-various-types.rs:48:5\n   |\nLL |     const I32_REF_I32_UNION: i32 = unsafe { Nonsense { int_32_ref: &3 }.int_32 };\n   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^----------------------------------^^^\n   |                                             |\n   |                                             a raw memory access tried to access part of a pointer value as raw bytes\n\n"}
[00:48:51] {"message":"this constant likely exhibits undefined behavior","code":{"code":"E0080","explanation":"\nThis error indicates that the compiler was unable to sensibly evaluate an\nconstant expression that had to be evaluated. Attempting to divide by 0\nor causing integer overflow are two ways to induce this error. For example:\n\n```compile_fail,E0080\nenum Enum {\n    X = (1 << 500),\n    Y = (1 / 0)\n}\n```\n\nEnsure that the expressions given can be evaluated as the desired integer type.\nSee the FFI section of the Reference for more information about using a custom\ninteger type:\n\nhttps://doc.rust-lang.org/reference.html#ffi-attributes\n"},"level":"error","spans":[{"file_name":"/checkout/src/test/ui/consts/const-eval/const-pointer-values-in-various-types.rs","byte_start":1566,"byte_end":1643,"line_start":51,"line_end":51,"column_start":5,"column_end":82,"is_primary":true,"text":[{"text":"    const I32_REF_I64_UNION: i64 = unsafe { Nonsense { int_32_ref: &3 }.int_64 };","highlight_start":5,"highlight_end":82}],"label":"type validation failed: encountered a pointer, but expected the type i64","suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[{"message":"The rules on what exactly is undefined behavior aren't clear, so this check might be overzealous. Please open an issue on the rust compiler repository if you believe it should not be considered undefined behavior","code":null,"level":"note","spans":[],"children":[],"rendered":null}],"rendered":"error[E0080]: this constant likely exhibits undefined behavior\n  --> /checkout/src/test/ui/consts/const-eval/const-pointer-values-in-various-types.rs:51:5\n   |\nLL |     const I32_REF_I64_UNION: i64 = unsafe { Nonsense { int_32_ref: &3 }.int_64 };\n   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ type validation failed: encountered a pointer, but expected the type i64\n   |\n   = note: The rules on what exactly is undefined behavior aren't clear, so this check might be overzealous. Please open an issue on the rust compiler repository if you believe it should not be considered undefined behavior\n\n"}
[00:48:51] {"message":"this constant cannot be used","code":{"code":"const_err","explanation":null},"level":"error","spans":[{"file_name":"/checkout/src/test/ui/consts/const-eval/const-pointer-values-in-various-types.rs","byte_start":1713,"byte_end":1793,"line_start":54,"line_end":54,"column_start":5,"column_end":85,"is_primary":true,"text":[{"text":"    const I32_REF_I128_UNION: i128 = unsafe { Nonsense { int_32_ref: &3 }.int_128 };","highlight_start":5,"highlight_end":85}],"label":"attempted to read undefined bytes","suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[],"rendered":"error: this constant cannot be used\n  --> /checkout/src/test/ui/consts/const-eval/const-pointer-values-in-various-types.rs:54:5\n   |\nLL |     const I32_REF_I128_UNION: i128 = unsafe { Nonsense { int_32_ref: &3 }.int_128 };\n   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ attempted to read undefined bytes\n\n"}
[00:48:51] {"message":"this constant cannot be used","code":{"code":"const_err","explanation":null},"level":"error","spans":[{"file_name":"/checkout/src/test/ui/consts/const-eval/const-pointer-values-in-various-types.rs","byte_start":1883,"byte_end":1919,"line_start":57,"line_end":57,"column_start":45,"column_end":81,"is_primary":false,"text":[{"text":"    const I32_REF_F32_UNION: f32 = unsafe { Nonsense { int_32_ref: &3 }.float_32 };","highlight_start":45,"highlight_end":81}],"label":"a raw memory access tried to access part of a pointer value as raw bytes","suggested_replacement":null,"suggestion_applicability":null,"expansion":null},{"file_name":"/checkout/src/test/ui/consts/const-eval/const-pointer-values-in-various-types.rs","byte_start":1843,"byte_end":1922,"line_start":57,"line_end":57,"column_start":5,"column_end":84,"is_primary":true,"text":[{"text":"    const I32_REF_F32_UNION: f32 = unsafe { Nonsense { int_32_ref: &3 }.float_32 };","highlight_start":5,"highlight_end":84}]84}],"label":"type validation failed: encountered a pointer, but expected the type f64","suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[{"message":"The rules on what exactly is undefined behavior aren't clear, so this check might be overzealous. Please open an issue on the rust compiler repository if you believe it should not be considered undefined behavior","code":null,"level":"note","spans":[],"children":[],"rendered":null}],"rendered":"error[E0080]: this constant likely exhibits undefined behavior\n  --> /checkout/src/test/ui/consts/const-eval/const-pointer-values-in-various-types.rs:60:5\n   |\nLL |     const I32_REF_F64_UNION: f64 = unsafe { Nonsense { int_32_ref: &3 }.float_64 };\n   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ type validation failed: encountered a pointer, but expected the type f64\n   |\n   = note: The rules on what exactly is undefined behavior aren't clear, so this check might be overzealous. Please open an issue on the rust compiler repository if you believe it should not be considered undefined behavior\n\n"}
[00:48:51] {"message":"this constant cannot be used","code":{"code":"const_err","explanation":null},"level":"error","spans":[{"file_name":"/checkout/src/test/ui/consts/const-eval/const-pointer-values-in-various-types.rs","byte_start":2163,"byte_end":2204,"line_start":63,"line_end":63,"column_start":47,"column_end":88,"is_primary":false,"text":[{"text":"    const I32_REF_BOOL_UNION: bool = unsafe { Nonsense { int_32_ref: &3 }.truthy_falsey };","highlight_start":47,"highlight_end":88}],"label":"a raw memory a to access part of a pointer value as raw bytes","suggested_replacement":null,"suggestion_applicability":null,"expansion":null},{"file_name":"/checkout/src/test/ui/consts/const-eval/const-pointer-values-in-various-types.rs","byte_start":2257,"byte_end":2339,"line_start":66,"line_end":66,"column_start":5,"column_end":87,"is_primary":true,"text":[{"text":"    const I32_REF_CHAR_UNION: char = unsafe { Nonsense { int_32_ref: &3 }.character };","highlight_start":5,"highlight_end":87}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[],"rendered":"error: this constant cannot be used\n  --> /checkout/src/test/ui/consts/const-eval/const-pointer-values-in-various-types.rs:66:5\n   |\nLL |     const I32_REF_CHAR_UNION: char = unsafe { Nonsense { int_32_ref: &3 }.character };\n   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^-------------------------------------^^^\n   |                                               |\n   |                                               a raw memory access tried to access part of a pointer value as raw bytes\n\n"}
[00:48:51] {"message":"this constant cannot be used","code":{"code":"const_err","explanation":null},"level":"error","spans":[{"file_name":"/checkout/src/test/ui/consts/const-eval/const-pointer-values-in-various-types.rs","byte_start":2423,"byte_end":2455,"line_start":69,"line_end":69,"column_start":39,"column_end":71,"is_primary":false,"text":[{"text":"    const STR_U8_UNION: u8 = unsafe { Nonsense { stringy: \"3\" }.uint_8 };","highlight_start":39,"highlight_end":71}],"label":"a raw memory access tried to access part of a pointer valuesion":null},{"file_name":"/checkout/src/test/ui/consts/const-eval/const-pointer-values-in-various-types.rs","byte_start":2508,"byte_end":2580,"line_start":72,"line_end":72,"column_start":5,"column_end":77,"is_primary":true,"text":[{"text":"    const STR_U16_UNION: u16 = unsafe { Nonsense { stringy: \"3\" }.uint_16 };","highlight_start":5,"highlight_end":77}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[],"rendered":"error: this constant cannot be used\n  --> /checkout/src/test/ui/consts/const-eval/const-pointer-values-in-various-types.rs:72:5\n   |\nLL |     const STR_U16_UNION: u16 = unsafe { Nonsense { stringy: \"3\" }.uint_16 };\n   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^---------------------------------^^^\n   |                                         |\n   |                                         a raw memory access tried to access part of a pointer value as raw bytes\n\n"}
[00:48:51] {"message":"this constant cannot be used","code":{"code":"const_err","explanation":null},"level":"error","spans":[{"file_name":"/checkout/src/test/ui/consts/const-eval/const-pointer-values-in-various-types.rs","byte_start":2666,"byte_end":2699,"line_start":75,"line_end":75,"column_start":41,"column_end":74,"is_primary":false,"text":[{"text":"    const STR_U32_UNION: u32 = unsafe { Nonsense { stringy: \"3\" }.uint_32 };","highlight_start":41,"highlight_end":74}],"label":"a raw memory access tried to access part of a pointer value as raw bytes","suggested_replacement":null,"suggestion_applicability":null,"expansion":null},{"file_name":"/checkout/src/test/ui/consts/const-eval/conne_start":81,"line_end":81,"column_start":43,"column_end":77,"is_primary":false,"text":[{"text":"    const STR_U128_UNION: u128 = unsafe { Nonsense { stringy: \"3\" }.uint_128 };","highlight_start":43,"highlight_end":77}],"label":"a raw memory access tried to access part of a pointer value as raw bytes","suggested_replacement":null,"suggestion_applicability":null,"expansion":null},{"file_name":"/checkout/src/test/ui/consts/const-eval/const-pointer-values-in-various-types.rs","byte_start":2894,"byte_end":2969,"line_start":81,"line_end":81,"column_start":5,"column_end":80,"is_primary":true,"text":[{"text":"    const STR_U128_UNION: u128 = unsafe { Nonsense { stringy: \"3\" }.uint_128 };","highlight_start":5,"highlight_end":80}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[],"rendered":"error: this constant cannot be used\n  --> /checkout/src/test/ui/consts/const-eval/const-pointer-values-in-various-types.rs:81:5\n   |\nLL |     const STR_U128_UNION: u128 = unsafe { Nonsense { stringy: \"3\" }.uint_128 };\n   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^----------------------------------^^^\n   |                                           |\n   |                                           a raw memory access tried to access part of a pointer value as raw bytes\n\n"}
[00:48:51] {"message":"this constant cannot be used","code":{"code":"const_err","explanation":null},"level":"error","spans":[{"file_name":"/checkout/src/test/ui/consts/const-eval/const-pointer-values-in-various-types.rs","byte_start":3053,"byte_end":3084,"line_start":84,"line_end":84,"column_start":39,"column_end":70,"is_primary":false,"text":[{"text":"    const STR_I8_UNION: i8 = unsafe { Nonsense { stringy: \"3\" }.int_8 };","highlight_start":39,"highlight_end":70}],"label":"a raw memory access tried to access part of a pointer value as raw bytes","suggested_replacement":null,"suggestion_applicability":null,"expansion":null},{"file_name":"/checkout/src/test/ui/consts/const-eval/const-pointer-values-in-various-types.rs","byte_start":3019,"byte_end":3087,"line_start":84,"line_end":84,"column_start":5,"column_end":73,"is_primary":true,"text":[{"text":"    const STR_I8_UNION: i8 = unsafe { Nonsense { stringy: \"3\" }.int_8 };","highlight_start":5,"highlight_end":73}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[],"rendered":"error: this constant cannot be used\n  --> /checkout/src/test/ui/consts/const-eval/const-pointer-values-in-various-types.rs:84:5\n   |\nLL |     const STR_I8_UNION: i8 = unsafe { Nonsense { stringy: \"3\" }.int_8 };\n   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^-------------------------------^^^\n   |                                       |\n   |                                       a raw memory access tried to access part of a pointer value as raw bytes\n\n"}
[00:48:51] {"message":"this constant cannot be used","code":{"code":"const_err","explanation":null},"level":"error","spans":[{"file_name":"/checkout/src/test/ui/consts/const-eval/const-pointer-values-in-various-types.rs","byte_start":3173,"byte_end":3205,"line_start":87,"line_end":87,"column_start":41,"column_end":73,"is_primary":false,"text":[{"text":"    const STR_I16_UNION: i16 = unsafe { Nonsense { stringy: \"3\" }.int_16 };","highlight_start":41,"highlight_end":73}],"label":"a raw memory access tried to access part of a pointer value as raw bytes","suggested_replacement":null,"suggestion_applicability":null,"expansion":null},{"file_name":"/checkout/src/test/ui/consts/const-eval/const-pointer-values-in-various-types.rs","byte_start":3137,"byte_end":3208,"line_start":87,"line_end":87,"column_start":5,"column_end":76,"is_primary":true,"text":[{"text":"    const STR_I16_UNION: i16 = unsafe { Nonsense { stringy: \"3\" }.int_16 };","highlight_start":5,"highlight_end":76}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[],"rendered":"error: this constant cannot be used\n  --> /checkout/src/test/ui/consts/const-eval/const-pointer-values-in-various-types.rs:87:5\n   |\nLL |     const STR_I16_UNION: i16 = unsafe { Nonsense { stringy: \"3\" }.int_16 };\n   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^--------------------------------^^^\n   |                                         |\n   |                                         a raw memory access tried to access part of a pointer value as raw bytes\n\n"}
[00:48:51] {"message":"this constant cannot be used","code":{"code":"const_err","explanation":null},"level":"error","spans":[{"file_name":"/checkout/src/test/ui/consts/const-eval/const-pointer-values-in-various-types.rs","byte_start":3294,"byte_end":3326,"line_start":90,"line_end":90,"column_start":41,"column_end":73,"is_primary":false,"text":[{"text":"    const STR_I32_UNION: i32 = unsafe { Nonsense { stringy: \"3\" }.int_32 };","highlight_start":41,"highlight_end":73o sensibly evaluate an\nconstant expression that had to be evaluated. Attempting to divide by 0\nor causing integer overflow are two ways to induce this error. For example:\n\n```compile_fail,E0080\nenum Enum {\n    X = (1 << 500),\n    Y = (1 / 0)\n}\n```\n\nEnsure that the expressions given can be evaluated as the desired integer type.\nSee the FFI section of the Reference for more information about using a custom\ninteger type:\n\nhttps://doc.rust-lang.org/reference.html#ffi-attributes\n"},"level":"error","spans":[{"file_name":"/checkout/src/test/ui/consts/const-eval/const-pointer-values-in-various-types.rs","byte_start":3767,"byte_end":3840,"line_start":102,"line_end":102,"column_start":5,"column_end":78,"is_primary":true,"text":[{"text":"    const STR_F64_UNION: f64 = unsafe { Nonsense { stringy: \"3\" }.float_64 };","highlight_start":5,"highlight_end":78}],"label":"type validation failed: encountered a pointer, but expected the type f64","suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[{"message":"The rules on what exactly is undefined behavior aren't clear, so this check might be overzealous. Please open an issue on the rust compiler repository if you believe it should not be considered undefined behavior","code":null,"level":"note","spans":[],"children":[],"rendered":null}],"rendered":"error[E0080]: this constant likely exhibits undefined behavior\n  --> /checkout/src/test/ui/consts/const-eval/const-pointer-values-in-various-types.rs:102:5\n   |\nLL |     const STR_F64_UNION: f64 = unsafe { Nonsense { stringy: \"3\" }.float_64 };\n   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ type validation failed: encountered a pointer, but expected the type f64\n   |\n   = note: The rules on what exactly is undefined behavior aren't clear, so this check might be overzealous. Please open an issue on the rust compiler repository if you believe it should not be considered undefined behavior\n\n"}
[00:48:51] {"message":"this constant cannot be used","code":{"code":"const_err","explanation":null},"level":"error","spans":[{"file_name":"/checkout/src/test/ui/consts/const-eval/const-pointer-values-in-various-types.rs","byte_start":3948,"byte_end":3987,"line_start":105,"line_end":105,"column_start":43,"column_end":82,"is_primary":false,"text":[{"text":"    const STR_BOOL_UNION: bool = unsafe { Nonsense { stringy: \"3\" }.truthy_falsey };","highlight_start":43,"highlight_end":82}],"label":"a raw memory access tried to access part of a pointer value as raw bytes","suggested_replacement":null,"suggestion_applicability":null,"expansion":null},{"file_name":"/checkout/src/test/ui/consts/const-eval/const-pointer-values-in-various-types.rs","byte_start":3910,"byte_end":3990,"line_start":105,"line_end":105,"column_start":5,"column_end":85,"is_primary":true,"text":[{"text":"    const STR_BOOL_UNION: bool = unsafe { Nonsense { stringy: \"3\" }.truthy_falsey };","highlight_start":5,"highlight_end":85}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[],"rendered":"error: this constant cannot be used\n  --> /checkout/src/test/ui/consts/const-eval/const-pointer-values-in-various-types.rs:105:5\n   |\nLL |     const STR_BOOL_UNION: bool = unsafe { Nonsense { stringy: \"3\" }.truthy_falsey };\n   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^---------------------------------------^^^\n   |                                           |\n   |                                           a raw memory access tried to access part of a pointer value as raw bytes\n\n"}
[00:48:51] {"message":"this constant cannot be used","code":{"code":"const_err","explanation":null},"level":"error","spans":[{"file_name":"/checkout/src/test/ui/consts/const-eval/const-pointer-values-in-various-types.rs","byte_start":4078,"byte_end":4113,"line_start":108,"line_end":108,"column_start":43,"column_end":78,"is_primary":false,"text":[{"text":"    const STR_CHAR_UNION: char = unsafe { Nonsense { stringy: \"3\" }.character };","highlight_start":43,"highlight_end":78}],"label":"a raw memory access tried to access part of a pointer value as raw bytes","suggested_replacement":null,"suggestion_applicability":null,"expansion":null},{"file_name":"/checkout/src/test/ui/consts/const-eval/const-pointer-values-in-various-types.rs","byte_start":4040,"byte_end":4116,"line_start":108,"line_end":108,"column_start":5,"column_end":81,"is_primary":true,"text":[{"text":"    const STR_CHAR_UNION: char = unsafe { Nonsense { stringy: \"3\" }.character };","highlight_start":5,"highlight_end":81}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[],"rendered":"error: this constant cannot be used\n  --> /checkout/src/test/ui/consts/const-eval/const-pointer-values-in-various-types.rs:108:5\n   |\nLL |     const STR_CHAR_UNION: char = unsafe { Nonsense { stringy: \"3\" }.c/rustc" "--src-base" "/checkout/src/test/ui" "--build-base" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui" "--stage-id" "stage2-x86_64-unknown-linux-gnu" "--mode" "ui" "--target" "x86_64-unknown-linux-gnu" "--host" "x86_64-unknown-linux-gnu" "--llvm-filecheck" "/usr/lib/llvm-5.0/bin/FileCheck" "--host-rustcflags" "-Crpath -O -Zunstable-options " "--target-rustcflags" "-Crpath -O -Zunstable-options  -Lnative=/checkout/obj/build/x86_64-unknown-linux-gnu/native/rust-test-helpers" "--docck-python" "/usr/bin/python2.7" "--lldb-python" "/usr/bin/python2.7" "--gdb" "/usr/bin/gdb" "--quiet" "--llvm-version" "5.0.0\n" "--system-llvm" "--cc" "" "--cxx" "" "--cflags" "" "--llvm-components" "" "--llvm-cxxflags" "" "--adb-path" "adb" "--adb-test-dir" "/data/tmp/work" "--android-cross-path" "" "--color" "always"
[00:48:51] 
[00:48:51] 
[00:48:51] failed to run: /checkout/obj/build/bootstrap/debug/bootstrap test
[00:48:51] Build completed unsuccessfully in 0:03:13
[00:48:51] Build completed unsuccessfully in 0:03:13
[00:48:51] make: *** [check] Error 1
[00:48:51] Makefile:58: recipe for target 'check' failed

The command "stamp sh -x -c "$RUN_SCRIPT"" exited with 2.
travis_time:start:17c5c040
$ date && (curl -fs --head https://google.com | grep ^Date: | sed 's/Date: //g' || true)
$ date && (curl -fs --head https://google.com | grep ^Date: | sed 's/Date: //g' || true)
Fri Aug 31 13:25:35 UTC 2018
or CORE in obj/cores/core.*; do EXE=$(echo $CORE | sed 's|obj/cores/core\.[0-9]*\.!checkout!\(.*\)|\1|;y|!|/|'); if [ -f "$EXE" ]; then printf travis_fold":start:crashlog\n\033[31;1m%s\033[0m\n" "$CORE"; gdb -q -c "$CORE" "$EXE" -iex 'set auto-load off' -iex 'dir src/' -iex 'set sysroot .' -ex bt -ex q; echo travis_fold":"end:crashlog; fi; done || true
travis_fold:end:after_failure.4
travis_fold:start:after_failure.5
travis_time:start:0bcc7f9a
travis_time:start:0bcc7f9a
$ cat ./obj/build/x86_64-unknown-linux-gnu/native/asan/build/lib/asan/clang_rt.asan-dynamic-i386.vers || true
cat: ./obj/build/x86_64-unknown-linux-gnu/native/asan/build/lib/asan/clang_rt.asan-dynamic-i386.vers: No such file or directory
travis_fold:end:after_failure.5
travis_fold:start:after_failure.6
travis_time:start:012c786e
$ dmesg | grep -i kill

I'm a bot! I can only do what humans tell me to, so if this was not helpful or you have suggestions for improvements, please ping or otherwise contact @TimNN. (Feature Requests)

@RalfJung

Copy link
Copy Markdown
Member

You removed two ui tests, didn't they come with .stderr files that should also be removed?

@emilyalbini

Copy link
Copy Markdown
Member

@craterbot run start=master#1114ab684fbad001c4e580326d8eb4d8c4e917d3 end=try#aa245a5862056b681d2ccdb178f58891108cd3a6 mode=check-only

@craterbot

Copy link
Copy Markdown
Collaborator

👌 Experiment pr-53831 created and queued.

ℹ️ Crater is a tool to run experiments across parts of the Rust ecosystem. Learn more

@craterbot craterbot added S-waiting-on-crater Status: Waiting on a crater run to be completed. and removed S-waiting-on-author Status: This is awaiting some action (such as code changes or more information) from the author. labels Aug 31, 2018
@craterbot

Copy link
Copy Markdown
Collaborator

🚧 Experiment pr-53831 is now running on agent crater-2.

ℹ️ Crater is a tool to run experiments across parts of the Rust ecosystem. Learn more

@TheDarkula

TheDarkula commented Aug 31, 2018

Copy link
Copy Markdown
Author

@RalfJung Those two tests were actually flagged with //compile-pass , so they had no .stderr. I checked :).
Thanks to both you and @pietroalbini for getting the crater test going

@emilyalbini

emilyalbini commented Aug 31, 2018

Copy link
Copy Markdown
Member

This experiment is running quite slowly on crater, maybe it would be best to also do a perf run?

@rust-timer build aa245a5862056b681d2ccdb178f58891108cd3a6 (uh, missing permissions for perf)

@rust-timer

Copy link
Copy Markdown
Collaborator

Insufficient permissions to issue commands to rust-timer.

@rust-lang rust-lang deleted a comment from rust-timer Aug 31, 2018
@RalfJung

RalfJung commented Sep 1, 2018

Copy link
Copy Markdown
Member

@rust-timer build aa245a5862056b681d2ccdb178f58891108cd3a6

I would be surprised, but let's see.

@rust-timer

Copy link
Copy Markdown
Collaborator

Success: Queued aa245a5862056b681d2ccdb178f58891108cd3a6 with parent 1114ab6, comparison URL.

@craterbot

Copy link
Copy Markdown
Collaborator

🎉 Experiment pr-53831 is completed!
📰 Open the full report.

⚠️ If you notice any spurious failure please add them to the blacklist!
ℹ️ Crater is a tool to run experiments across parts of the Rust ecosystem. Learn more

@craterbot craterbot added S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. and removed S-waiting-on-crater Status: Waiting on a crater run to be completed. labels Sep 2, 2018
@oli-obk

oli-obk commented Sep 3, 2018

Copy link
Copy Markdown
Contributor

Some noise in the timer, mostly even positive

Spurious regression in the crater run (thread '' panicked at 'procedural macro API is used outside of a procedural macro', libproc_macro/lib.rs:1295:13)

@bors r+

@bors

bors commented Sep 3, 2018

Copy link
Copy Markdown
Collaborator

📌 Commit de0cd23 has been approved by oli-obk

@bors bors added S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. and removed S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. labels Sep 3, 2018
@bors

bors commented Sep 3, 2018

Copy link
Copy Markdown
Collaborator

⌛ Testing commit de0cd23 with merge 591a17d...

bors added a commit that referenced this pull request Sep 3, 2018
Added pointer checking to sanity checks

r? @oli-obk
@bors

bors commented Sep 3, 2018

Copy link
Copy Markdown
Collaborator

☀️ Test successful - status-appveyor, status-travis
Approved by: oli-obk
Pushing 591a17d to master...

@bors
bors merged commit de0cd23 into rust-lang:master Sep 3, 2018
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

8 participants