Closed
Description
I am locally seeing test failures on OS X that seem like #18804 has regressed, or the shuffling of the run-pass to ui/run-pass somehow exposed a new bug there.
---- [ui] ui/run-pass/issues/issue-18804/main.rs stdout ----
error: test compilation failed although it shouldn't!
status: exit code: 1
command: "/Users/fklock/Dev/Mozilla/issue53528/rust-53528/objdir-dbgopt/build/x86_64-apple-darwin/stage1/bin/rustc" "/Users/fklock/Dev/Mozilla/issue53528/rust-53528/src/test/ui/run-pass/issues/issue-18804/main.rs" "--target=x86_64-apple-darwin" "--error-format" "json" "-Zui-testing" "-C" "prefer-dynamic" "-o" "/Users/fklock/Dev/Mozilla/issue53528/rust-53528/objdir-dbgopt/build/x86_64-apple-darwin/test/ui/run-pass/issues/issue-18804/main/a" "-Crpath" "-Zunstable-options" "-Lnative=/Users/fklock/Dev/Mozilla/issue53528/rust-53528/objdir-dbgopt/build/x86_64-apple-darwin/native/rust-test-helpers" "-L" "/Users/fklock/Dev/Mozilla/issue53528/rust-53528/objdir-dbgopt/build/x86_64-apple-darwin/test/ui/run-pass/issues/issue-18804/main/auxiliary" "-A" "unused"
stdout:
------------------------------------------
------------------------------------------
stderr:
------------------------------------------
{"message":"linking with `cc` failed: exit code: 1","code":null,"level":"error","spans":[],"children":[{"message":"\"cc\" \"-m64\" \"-L\" \"/Users/fklock/Dev/Mozilla/issue53528/rust-53528/objdir-dbgopt/build/x86_64-apple-darwin/stage1/lib/rustlib/x86_64-apple-darwin/lib\" \"/Users/fklock/Dev/Mozilla/issue53528/rust-53528/objdir-dbgopt/build/x86_64-apple-darwin/test/ui/run-pass/issues/issue-18804/main/a.main.7rcbfp3g-cgu.0.rcgu.o\" \"/Users/fklock/Dev/Mozilla/issue53528/rust-53528/objdir-dbgopt/build/x86_64-apple-darwin/test/ui/run-pass/issues/issue-18804/main/a.main.7rcbfp3g-cgu.1.rcgu.o\" \"/Users/fklock/Dev/Mozilla/issue53528/rust-53528/objdir-dbgopt/build/x86_64-apple-darwin/test/ui/run-pass/issues/issue-18804/main/a.main.7rcbfp3g-cgu.2.rcgu.o\" \"/Users/fklock/Dev/Mozilla/issue53528/rust-53528/objdir-dbgopt/build/x86_64-apple-darwin/test/ui/run-pass/issues/issue-18804/main/a.main.7rcbfp3g-cgu.3.rcgu.o\" \"/Users/fklock/Dev/Mozilla/issue53528/rust-53528/objdir-dbgopt/build/x86_64-apple-darwin/test/ui/run-pass/issues/issue-18804/main/a.main.7rcbfp3g-cgu.4.rcgu.o\" \"/Users/fklock/Dev/Mozilla/issue53528/rust-53528/objdir-dbgopt/build/x86_64-apple-darwin/test/ui/run-pass/issues/issue-18804/main/a.main.7rcbfp3g-cgu.5.rcgu.o\" \"-o\" \"/Users/fklock/Dev/Mozilla/issue53528/rust-53528/objdir-dbgopt/build/x86_64-apple-darwin/test/ui/run-pass/issues/issue-18804/main/a\" \"-Wl,-dead_strip\" \"-nodefaultlibs\" \"-L\" \"/Users/fklock/Dev/Mozilla/issue53528/rust-53528/objdir-dbgopt/build/x86_64-apple-darwin/native/rust-test-helpers\" \"-L\" \"/Users/fklock/Dev/Mozilla/issue53528/rust-53528/objdir-dbgopt/build/x86_64-apple-darwin/test/ui/run-pass/issues/issue-18804/main/auxiliary\" \"-L\" \"/Users/fklock/Dev/Mozilla/issue53528/rust-53528/objdir-dbgopt/build/x86_64-apple-darwin/stage1/lib/rustlib/x86_64-apple-darwin/lib\" \"-L\" \"/Users/fklock/Dev/Mozilla/issue53528/rust-53528/objdir-dbgopt/build/x86_64-apple-darwin/test/ui/run-pass/issues/issue-18804/main/auxiliary\" \"-llib\" \"-L\" \"/Users/fklock/Dev/Mozilla/issue53528/rust-53528/objdir-dbgopt/build/x86_64-apple-darwin/stage1/lib/rustlib/x86_64-apple-darwin/lib\" \"-lstd-bc4d93c7cd68669e\" \"/Users/fklock/Dev/Mozilla/issue53528/rust-53528/objdir-dbgopt/build/x86_64-apple-darwin/stage1/lib/rustlib/x86_64-apple-darwin/lib/libcompiler_builtins-4219949d54044b85.rlib\" \"-lSystem\" \"-lresolv\" \"-lpthread\" \"-lc\" \"-lm\" \"-Wl,-rpath,@loader_path/auxiliary\" \"-Wl,-rpath,@loader_path/../../../../../../stage1/lib/rustlib/x86_64-apple-darwin/lib\" \"-Wl,-rpath,/Users/fklock/Dev/Mozilla/issue53528/rust-53528/objdir-dbgopt/~/opt/rust-dbg/lib/rustlib/x86_64-apple-darwin/lib\"","code":null,"level":"note","spans":[],"children":[],"rendered":null},{"message":"Undefined symbols for architecture x86_64:\n \"_FOO\", referenced from:\n __rust_extern_with_linkage_FOO in a.main.7rcbfp3g-cgu.4.rcgu.o\nld: symbol(s) not found for architecture x86_64\nclang: error: linker command failed with exit code 1 (use -v to see invocation)\n","code":null,"level":"note","spans":[],"children":[],"rendered":null}],"rendered":"error: linking with `cc` failed: exit code: 1\n |\n = note: \"cc\" \"-m64\" \"-L\" \"/Users/fklock/Dev/Mozilla/issue53528/rust-53528/objdir-dbgopt/build/x86_64-apple-darwin/stage1/lib/rustlib/x86_64-apple-darwin/lib\" \"/Users/fklock/Dev/Mozilla/issue53528/rust-53528/objdir-dbgopt/build/x86_64-apple-darwin/test/ui/run-pass/issues/issue-18804/main/a.main.7rcbfp3g-cgu.0.rcgu.o\" \"/Users/fklock/Dev/Mozilla/issue53528/rust-53528/objdir-dbgopt/build/x86_64-apple-darwin/test/ui/run-pass/issues/issue-18804/main/a.main.7rcbfp3g-cgu.1.rcgu.o\" \"/Users/fklock/Dev/Mozilla/issue53528/rust-53528/objdir-dbgopt/build/x86_64-apple-darwin/test/ui/run-pass/issues/issue-18804/main/a.main.7rcbfp3g-cgu.2.rcgu.o\" \"/Users/fklock/Dev/Mozilla/issue53528/rust-53528/objdir-dbgopt/build/x86_64-apple-darwin/test/ui/run-pass/issues/issue-18804/main/a.main.7rcbfp3g-cgu.3.rcgu.o\" \"/Users/fklock/Dev/Mozilla/issue53528/rust-53528/objdir-dbgopt/build/x86_64-apple-darwin/test/ui/run-pass/issues/issue-18804/main/a.main.7rcbfp3g-cgu.4.rcgu.o\" \"/Users/fklock/Dev/Mozilla/issue53528/rust-53528/objdir-dbgopt/build/x86_64-apple-darwin/test/ui/run-pass/issues/issue-18804/main/a.main.7rcbfp3g-cgu.5.rcgu.o\" \"-o\" \"/Users/fklock/Dev/Mozilla/issue53528/rust-53528/objdir-dbgopt/build/x86_64-apple-darwin/test/ui/run-pass/issues/issue-18804/main/a\" \"-Wl,-dead_strip\" \"-nodefaultlibs\" \"-L\" \"/Users/fklock/Dev/Mozilla/issue53528/rust-53528/objdir-dbgopt/build/x86_64-apple-darwin/native/rust-test-helpers\" \"-L\" \"/Users/fklock/Dev/Mozilla/issue53528/rust-53528/objdir-dbgopt/build/x86_64-apple-darwin/test/ui/run-pass/issues/issue-18804/main/auxiliary\" \"-L\" \"/Users/fklock/Dev/Mozilla/issue53528/rust-53528/objdir-dbgopt/build/x86_64-apple-darwin/stage1/lib/rustlib/x86_64-apple-darwin/lib\" \"-L\" \"/Users/fklock/Dev/Mozilla/issue53528/rust-53528/objdir-dbgopt/build/x86_64-apple-darwin/test/ui/run-pass/issues/issue-18804/main/auxiliary\" \"-llib\" \"-L\" \"/Users/fklock/Dev/Mozilla/issue53528/rust-53528/objdir-dbgopt/build/x86_64-apple-darwin/stage1/lib/rustlib/x86_64-apple-darwin/lib\" \"-lstd-bc4d93c7cd68669e\" \"/Users/fklock/Dev/Mozilla/issue53528/rust-53528/objdir-dbgopt/build/x86_64-apple-darwin/stage1/lib/rustlib/x86_64-apple-darwin/lib/libcompiler_builtins-4219949d54044b85.rlib\" \"-lSystem\" \"-lresolv\" \"-lpthread\" \"-lc\" \"-lm\" \"-Wl,-rpath,@loader_path/auxiliary\" \"-Wl,-rpath,@loader_path/../../../../../../stage1/lib/rustlib/x86_64-apple-darwin/lib\" \"-Wl,-rpath,/Users/fklock/Dev/Mozilla/issue53528/rust-53528/objdir-dbgopt/~/opt/rust-dbg/lib/rustlib/x86_64-apple-darwin/lib\"\n = note: Undefined symbols for architecture x86_64:\n \"_FOO\", referenced from:\n __rust_extern_with_linkage_FOO in a.main.7rcbfp3g-cgu.4.rcgu.o\n ld: symbol(s) not found for architecture x86_64\n clang: error: linker command failed with exit code 1 (use -v to see invocation)\n \n\n"}
{"message":"aborting due to previous error","code":null,"level":"error","spans":[],"children":[],"rendered":"error: aborting due to previous error\n\n"}
------------------------------------------
thread '[ui] ui/run-pass/issues/issue-18804/main.rs' panicked at 'explicit panic', tools/compiletest/src/runtest.rs:3196:9
note: Run with `RUST_BACKTRACE=1` for a backtrace.
failures:
[ui] ui/run-pass/issues/issue-18804/main.rs
I am not certain what is happening yet. After reviewing #18804, I have looked briefly at the generated LLVM IR output for main.rs, and it seems like FOO
is being "properly" tagged (see some discussion of the current approach here: #12556):
%"unwind::libunwind::_Unwind_Exception" = type { [0 x i64], i64, [0 x i64], void (i32, %"unwind::libunwind::_Unwind_Exception"*)*, [0 x i64], [6 x i64], [0 x i64] }
%"unwind::libunwind::_Unwind_Context" = type { [0 x i8] }
@FOO = extern_weak global {}
@_rust_extern_with_linkage_FOO = internal global {}* @FOO