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

compile-fail tests sometimes considered sucessfully compiled by the test harness #18981

Closed
ghost opened this issue Nov 15, 2014 · 3 comments
Closed
Labels
A-testsuite Area: The testsuite used to check the correctness of rustc O-windows Operating system: Windows

Comments

@ghost
Copy link

ghost commented Nov 15, 2014

Occasionally a PR will fail the bors integration due to a compile-fail test compiling successfully... except not, as evidenced here: http://buildbot.rust-lang.org/builders/auto-win-32-opt/builds/1928/steps/test/logs/stdio

---- [compile-fail] compile-fail/issue-17718-static-sync.rs stdout ----

    error: compile-fail test compiled successfully!
    status: exit code: 0
    command: PATH="i686-pc-windows-gnu/stage2/bin;.;C:\program files (x86)\mingw-w64\i686-4.8.1-win32-dwarf-rt_v3-rev2\mingw32\bin;C:\msys64\usr\bin;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0;C:\msys64\usr\bin;C:\python27;C:\python27\scripts;C:\program files (x86)\inno setup 5;C:\program files (x86)\CMake\bin;i686-pc-windows-gnu\stage2\bin\rustlib\i686-pc-windows-gnu\lib" i686-pc-windows-gnu\stage2\bin\rustc.exe C:\bot\slave\auto-win-32-opt\build\src\test\compile-fail\issue-17718-static-sync.rs -L i686-pc-windows-gnu\test\compile-fail --target=i686-pc-windows-gnu -L i686-pc-windows-gnu\test\compile-fail\issue-17718-static-sync.stage2-i686-pc-windows-gnulibaux -C prefer-dynamic -o i686-pc-windows-gnu\test\compile-fail\issue-17718-static-sync.stage2-i686-pc-windows-gnu.exe --cfg rtopt --cfg debug -O -L i686-pc-windows-gnu/rt
    stdout:
    ------------------------------------------

    ------------------------------------------
    stderr:
    ------------------------------------------
    C:\bot\slave\auto-win-32-opt\build\src\test\compile-fail\issue-17718-static-sync.rs:16:19: 16:49 error: shared static items must have a type which implements Sync
    C:\bot\slave\auto-win-32-opt\build\src\test\compile-fail\issue-17718-static-sync.rs:16 static BAR: Foo = Foo { marker: marker::NoSync };
                                                                                                             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    error: aborting due to previous error

The compiler's output suggests that it's the test harness that somehow misreads the exit code. This might be a library issue in std::io::process::Command.

@ghost ghost added A-testsuite Area: The testsuite used to check the correctness of rustc A-infrastructure labels Nov 15, 2014
@alexcrichton
Copy link
Member

This has been happening for quite some time as well. I've only ever seen this happen on Windows, never on Unix. (a few more data points)

@alexcrichton
Copy link
Member

I do somewhat suspect an issue with Command...

@ghost ghost added the O-windows Operating system: Windows label Nov 15, 2014
@alexcrichton
Copy link
Member

I haven't seen this in quite some time, and I touched up a few suspicious areas in the new process module when it went through the most recent I/O reform, so I'm going to tentatively close this in hopes that it's actually fixed!

lnicola added a commit to lnicola/rust that referenced this issue Jan 20, 2025
…o-srv-portability

proc-macro-srv: make usage of RTLD_DEEPBIND portable
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
A-testsuite Area: The testsuite used to check the correctness of rustc O-windows Operating system: Windows
Projects
None yet
Development

No branches or pull requests

1 participant