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

Rollup of 7 pull requests #120336

Closed
wants to merge 29 commits into from

Conversation

matthiaskrgr
Copy link
Member

Successful merges:

r? @ghost
@rustbot modify labels: rollup

Create a similar rollup

Amanieu and others added 29 commits November 23, 2023 11:42
Tracking issue: rust-lang#107540

Currently, a `Cursor` points to a single element in the tree, and allows
moving to the next or previous element while mutating the tree. However
this was found to be confusing and hard to use.

This PR completely refactors cursors to instead point to a gap between
two elements in the tree. This eliminates the need for a "ghost" element
that exists after the last element and before the first one.
Additionally, `upper_bound` and `lower_bound` now have a much clearer
meaning.

The ability to mutate keys is also factored out into a separate
`CursorMutKey` type which is unsafe to create. This makes the API easier
to use since it avoids duplicated versions of each method with and
without key mutation.

API summary:

```rust
impl<K, V> BTreeMap<K, V> {
    fn lower_bound<Q>(&self, bound: Bound<&Q>) -> Cursor<'_, K, V>
    where
        K: Borrow<Q> + Ord,
        Q: Ord;
    fn lower_bound_mut<Q>(&mut self, bound: Bound<&Q>) -> CursorMut<'_, K, V>
    where
        K: Borrow<Q> + Ord,
        Q: Ord;
    fn upper_bound<Q>(&self, bound: Bound<&Q>) -> Cursor<'_, K, V>
    where
        K: Borrow<Q> + Ord,
        Q: Ord;
    fn upper_bound_mut<Q>(&mut self, bound: Bound<&Q>) -> CursorMut<'_, K, V>
    where
        K: Borrow<Q> + Ord,
        Q: Ord;
}

struct Cursor<'a, K: 'a, V: 'a>;

impl<'a, K, V> Cursor<'a, K, V> {
    fn next(&mut self) -> Option<(&'a K, &'a V)>;
    fn prev(&mut self) -> Option<(&'a K, &'a V)>;
    fn peek_next(&self) -> Option<(&'a K, &'a V)>;
    fn peek_prev(&self) -> Option<(&'a K, &'a V)>;
}

struct CursorMut<'a, K: 'a, V: 'a>;

impl<'a, K, V> CursorMut<'a, K, V> {
    fn next(&mut self) -> Option<(&K, &mut V)>;
    fn prev(&mut self) -> Option<(&K, &mut V)>;
    fn peek_next(&mut self) -> Option<(&K, &mut V)>;
    fn peek_prev(&mut self) -> Option<(&K, &mut V)>;

    unsafe fn insert_after_unchecked(&mut self, key: K, value: V);
    unsafe fn insert_before_unchecked(&mut self, key: K, value: V);
    fn insert_after(&mut self, key: K, value: V);
    fn insert_before(&mut self, key: K, value: V);
    fn remove_next(&mut self) -> Option<(K, V)>;
    fn remove_prev(&mut self) -> Option<(K, V)>;

    fn as_cursor(&self) -> Cursor<'_, K, V>;

    unsafe fn with_mutable_key(self) -> CursorMutKey<'a, K, V, A>;
}

struct CursorMutKey<'a, K: 'a, V: 'a>;

impl<'a, K, V> CursorMut<'a, K, V> {
    fn next(&mut self) -> Option<(&mut K, &mut V)>;
    fn prev(&mut self) -> Option<(&mut K, &mut V)>;
    fn peek_next(&mut self) -> Option<(&mut K, &mut V)>;
    fn peek_prev(&mut self) -> Option<(&mut K, &mut V)>;

    unsafe fn insert_after_unchecked(&mut self, key: K, value: V);
    unsafe fn insert_before_unchecked(&mut self, key: K, value: V);
    fn insert_after(&mut self, key: K, value: V);
    fn insert_before(&mut self, key: K, value: V);
    fn remove_next(&mut self) -> Option<(K, V)>;
    fn remove_prev(&mut self) -> Option<(K, V)>;

    fn as_cursor(&self) -> Cursor<'_, K, V>;

    unsafe fn with_mutable_key(self) -> CursorMutKey<'a, K, V, A>;
}
```
Co-authored-by: Joe ST <joe@fbstj.net>
Rename `link_(dylib,framework)`, remove `link_rust_dylib`.
Rename `link(_whole)(staticlib,rlib)` to something more suitable.
remove tests/ui/command/command-create-pidfd.rs . But it contains
very useful comment, so let's move the comment to library/std/src/sys/pal/unix/rand.rs ,
which contains another instance of the same Docker problem
…mand/command-create-pidfd.rs

to library/std/src/sys/pal/unix/process/process_unix/tests.rs to remove code
duplication
Rewrite the BTreeMap cursor API using gaps

Tracking issue: rust-lang#107540

Currently, a `Cursor` points to a single element in the tree, and allows moving to the next or previous element while mutating the tree. However this was found to be confusing and hard to use.

This PR completely refactors cursors to instead point to a gap between two elements in the tree. This eliminates the need for a "ghost" element that exists after the last element and before the first one. Additionally, `upper_bound` and `lower_bound` now have a much clearer meaning.

The ability to mutate keys is also factored out into a separate `CursorMutKey` type which is unsafe to create. This makes the API easier to use since it avoids duplicated versions of each method with and without key mutation.

API summary:

```rust
impl<K, V> BTreeMap<K, V> {
    fn lower_bound<Q>(&self, bound: Bound<&Q>) -> Cursor<'_, K, V>
    where
        K: Borrow<Q> + Ord,
        Q: Ord;
    fn lower_bound_mut<Q>(&mut self, bound: Bound<&Q>) -> CursorMut<'_, K, V>
    where
        K: Borrow<Q> + Ord,
        Q: Ord;
    fn upper_bound<Q>(&self, bound: Bound<&Q>) -> Cursor<'_, K, V>
    where
        K: Borrow<Q> + Ord,
        Q: Ord;
    fn upper_bound_mut<Q>(&mut self, bound: Bound<&Q>) -> CursorMut<'_, K, V>
    where
        K: Borrow<Q> + Ord,
        Q: Ord;
}

struct Cursor<'a, K: 'a, V: 'a>;

impl<'a, K, V> Cursor<'a, K, V> {
    fn next(&mut self) -> Option<(&'a K, &'a V)>;
    fn prev(&mut self) -> Option<(&'a K, &'a V)>;
    fn peek_next(&self) -> Option<(&'a K, &'a V)>;
    fn peek_prev(&self) -> Option<(&'a K, &'a V)>;
}

struct CursorMut<'a, K: 'a, V: 'a>;

impl<'a, K, V> CursorMut<'a, K, V> {
    fn next(&mut self) -> Option<(&K, &mut V)>;
    fn prev(&mut self) -> Option<(&K, &mut V)>;
    fn peek_next(&mut self) -> Option<(&K, &mut V)>;
    fn peek_prev(&mut self) -> Option<(&K, &mut V)>;

    unsafe fn insert_after_unchecked(&mut self, key: K, value: V);
    unsafe fn insert_before_unchecked(&mut self, key: K, value: V);
    fn insert_after(&mut self, key: K, value: V) -> Result<(), UnorderedKeyError>;
    fn insert_before(&mut self, key: K, value: V) -> Result<(), UnorderedKeyError>;
    fn remove_next(&mut self) -> Option<(K, V)>;
    fn remove_prev(&mut self) -> Option<(K, V)>;

    fn as_cursor(&self) -> Cursor<'_, K, V>;

    unsafe fn with_mutable_key(self) -> CursorMutKey<'a, K, V, A>;
}

struct CursorMutKey<'a, K: 'a, V: 'a>;

impl<'a, K, V> CursorMut<'a, K, V> {
    fn next(&mut self) -> Option<(&mut K, &mut V)>;
    fn prev(&mut self) -> Option<(&mut K, &mut V)>;
    fn peek_next(&mut self) -> Option<(&mut K, &mut V)>;
    fn peek_prev(&mut self) -> Option<(&mut K, &mut V)>;

    unsafe fn insert_after_unchecked(&mut self, key: K, value: V);
    unsafe fn insert_before_unchecked(&mut self, key: K, value: V);
    fn insert_after(&mut self, key: K, value: V) -> Result<(), UnorderedKeyError>;
    fn insert_before(&mut self, key: K, value: V) -> Result<(), UnorderedKeyError>;
    fn remove_next(&mut self) -> Option<(K, V)>;
    fn remove_prev(&mut self) -> Option<(K, V)>;

    fn as_cursor(&self) -> Cursor<'_, K, V>;

    unsafe fn with_mutable_key(self) -> CursorMutKey<'a, K, V, A>;
}

struct UnorderedKeyError;
```
linker: Refactor library linking methods in `trait Linker`

Linkers are not aware of Rust libraries, they look like regular static or dynamic libraries to them, so Rust-specific methods in `trait Linker` do not make much sense.
They can be either removed or renamed to something more suitable.

Commits after the second one are cleanups.
…direction, r=dtolnay

Switch `NonZero` alias direction.

Step 4 mentioned in rust-lang#100428 (review).

Depends on rust-lang#120160.

r? `@dtolnay`
…Gomez

Bump `askama` version

Ran into this while looking at rust-lang#112865 and thought it would be useful to fix it now. Some more details in [Zulip](https://rust-lang.zulipchat.com/#narrow/stream/266220-t-rustdoc/topic/Askama.20parser.20changes)
…ochenkov

Clean up after clone3 removal from pidfd code (docs and tests)

rust-lang#113939 removed clone3 from pidfd code. This patchset does necessary clean up: fixes docs and tests
…compiler-errors

Don't call `walk_` functions directly if there is an equivalent `visit_` method

I was working on rust-lang#77773 and realized in one of my experiments that the `visit_path` method was not always called whereas it should have. This fixes it.

r? `@davidtwco`
…in-coroutine-drop-body, r=nnethercote

Remove coroutine info when building coroutine drop body

Coroutine drop shims are not themselves coroutines, so erase the "`coroutine`" field from the body so that helper fns like `yield_ty` and `coroutine_kind` properly return `None` for the drop shim.
@rustbot rustbot added the O-linux Operating system: Linux label Jan 25, 2024
@rustbot rustbot added O-unix Operating system: Unix-like S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. T-compiler Relevant to the compiler team, which will review and decide on the PR/issue. T-libs Relevant to the library team, which will review and decide on the PR/issue. T-rustdoc Relevant to the rustdoc team, which will review and decide on the PR/issue. rollup A PR which is a rollup labels Jan 25, 2024
@matthiaskrgr
Copy link
Member Author

@bors r+ rollup=never p=7

@bors
Copy link
Contributor

bors commented Jan 25, 2024

📌 Commit 8d3d3a8 has been approved by matthiaskrgr

It is now in the queue for this repository.

@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 Jan 25, 2024
@bors
Copy link
Contributor

bors commented Jan 25, 2024

⌛ Testing commit 8d3d3a8 with merge 3d1ec5d...

bors added a commit to rust-lang-ci/rust that referenced this pull request Jan 25, 2024
…iaskrgr

Rollup of 7 pull requests

Successful merges:

 - rust-lang#118208 (Rewrite the BTreeMap cursor API using gaps)
 - rust-lang#120099 (linker: Refactor library linking methods in `trait Linker`)
 - rust-lang#120165 (Switch `NonZero` alias direction.)
 - rust-lang#120288 (Bump `askama` version)
 - rust-lang#120306 (Clean up after clone3 removal from pidfd code (docs and tests))
 - rust-lang#120316 (Don't call `walk_` functions directly if there is an equivalent `visit_` method)
 - rust-lang#120330 (Remove coroutine info when building coroutine drop body)

r? `@ghost`
`@rustbot` modify labels: rollup
@rust-log-analyzer
Copy link
Collaborator

The job x86_64-msvc failed! Check out the build log: (web) (plain)

Click to see the possible cause of the failure (guessed by this bot)
failures:

---- [debuginfo-cdb] tests\debuginfo\msvc-pretty-enums.rs stdout ----

error: check directive(s) from `C:\a\rust\rust\tests\debuginfo\msvc-pretty-enums.rs` not found in debugger output. errors:
    (msvc-pretty-enums.rs:49) ` niche128_some    : Some [Type: enum2$<core::option::Option<core::num::nonzero::NonZero<i128>> >]`
    (msvc-pretty-enums.rs:54) ` niche128_none    : None [Type: enum2$<core::option::Option<core::num::nonzero::NonZero<i128>> >]`
the following subset of check directive(s) was found successfully:
    (msvc-pretty-enums.rs:7) `a                : Some [Type: enum2$<core::option::Option<msvc_pretty_enums::CStyleEnum> >]`
    (msvc-pretty-enums.rs:8) `    [+0x000] __0              : Low (0x2) [Type: msvc_pretty_enums::CStyleEnum]`
    (msvc-pretty-enums.rs:11) `b                : None [Type: enum2$<core::option::Option<msvc_pretty_enums::CStyleEnum> >]`
    (msvc-pretty-enums.rs:14) `c                : Tag1 [Type: enum2$<msvc_pretty_enums::NicheLayoutEnum>]`
    (msvc-pretty-enums.rs:17) `d                : Data [Type: enum2$<msvc_pretty_enums::NicheLayoutEnum>]`
    (msvc-pretty-enums.rs:18) `    [+0x000] my_data          : High (0x10) [Type: msvc_pretty_enums::CStyleEnum]`
    (msvc-pretty-enums.rs:21) `e                : Tag2 [Type: enum2$<msvc_pretty_enums::NicheLayoutEnum>]`
    (msvc-pretty-enums.rs:24) `f                : Some [Type: enum2$<core::option::Option<ref$<u32> > >]`
    (msvc-pretty-enums.rs:25) `    [+0x000] __0              : 0x7ff7de906af0 : 0x1 [Type: unsigned int *]`
    (msvc-pretty-enums.rs:28) `g                : None [Type: enum2$<core::option::Option<ref$<u32> > >]`
    (msvc-pretty-enums.rs:31) `h                : Some [Type: enum2$<core::option::Option<u32> >]`
    (msvc-pretty-enums.rs:32) `    [+0x004] __0              : 0xc [Type: unsigned int]`
    (msvc-pretty-enums.rs:35) `i                : None [Type: enum2$<core::option::Option<u32> >]`
    (msvc-pretty-enums.rs:38) `j                : High (0x10) [Type: msvc_pretty_enums::CStyleEnum]`
    (msvc-pretty-enums.rs:41) `k                : Some [Type: enum2$<core::option::Option<alloc::string::String> >]`
    (msvc-pretty-enums.rs:42) `    [+0x000] __0              : "IAMA optional string!" [Type: alloc::string::String]`
    (msvc-pretty-enums.rs:45) `l                : Ok [Type: enum2$<core::result::Result<u32,enum2$<msvc_pretty_enums::Empty> > >]`
    (msvc-pretty-enums.rs:46) `    [+0x000] __0              : 0x2a [Type: unsigned int]`
    (msvc-pretty-enums.rs:51) `    [+0x000] __0              [Type: core::num::nonzero::NonZero<i128>]`
    (msvc-pretty-enums.rs:57) `wrapping_niche128_untagged : X [Type: enum2$<msvc_pretty_enums::Wrapping128Niche>]`
    (msvc-pretty-enums.rs:58) `    [+0x000] __0              [Type: msvc_pretty_enums::Wrapping128]`
    (msvc-pretty-enums.rs:61) `wrapping_niche128_none1 : Y [Type: enum2$<msvc_pretty_enums::Wrapping128Niche>]`
    (msvc-pretty-enums.rs:62) `    [+0x000] __0              [Type: msvc_pretty_enums::Wrapping128]`
    (msvc-pretty-enums.rs:65) `wrapping_niche128_none2 : Z [Type: enum2$<msvc_pretty_enums::Wrapping128Niche>]`
    (msvc-pretty-enums.rs:66) `    [+0x000] __0              [Type: msvc_pretty_enums::Wrapping128]`
    (msvc-pretty-enums.rs:69) `direct_tag_128_a,d : A [Type: enum2$<msvc_pretty_enums::DirectTag128>]`
    (msvc-pretty-enums.rs:70) `    [+0x010] __0              : 42 [Type: unsigned int]`
    (msvc-pretty-enums.rs:73) `direct_tag_128_b,d : B [Type: enum2$<msvc_pretty_enums::DirectTag128>]`
    (msvc-pretty-enums.rs:74) `    [+0x010] __0              : 137 [Type: unsigned int]`
    (msvc-pretty-enums.rs:77) `niche_w_fields_1_some,d : A [Type: enum2$<msvc_pretty_enums::NicheLayoutWithFields1>]`
    (msvc-pretty-enums.rs:78) `    [+0x008] __0              : 0x7ff7de906b58 : 77 [Type: unsigned char *]`
    (msvc-pretty-enums.rs:79) `    [+0x004] __1              : 7 [Type: unsigned int]`
    (msvc-pretty-enums.rs:82) `niche_w_fields_1_none,d : B [Type: enum2$<msvc_pretty_enums::NicheLayoutWithFields1>]`
    (msvc-pretty-enums.rs:83) `    [+0x004] __0              : 99 [Type: unsigned int]`
    (msvc-pretty-enums.rs:86) `niche_w_fields_2_some,d : A [Type: enum2$<msvc_pretty_enums::NicheLayoutWithFields2>]`
    (msvc-pretty-enums.rs:87) `    [+0x004] __0              : 800 [Type: core::num::nonzero::NonZero<u32>]`
    (msvc-pretty-enums.rs:88) `    [+0x008] __1              : 900 [Type: unsigned __int64]`
    (msvc-pretty-enums.rs:91) `niche_w_fields_2_none,d : B [Type: enum2$<msvc_pretty_enums::NicheLayoutWithFields2>]`
    (msvc-pretty-enums.rs:92) `    [+0x008] __0              : 1000 [Type: unsigned __int64]`
    (msvc-pretty-enums.rs:95) `niche_w_fields_3_some,d : A [Type: enum2$<msvc_pretty_enums::NicheLayoutWithFields3>]`
    (msvc-pretty-enums.rs:96) `    [+0x001] __0              : 137 [Type: unsigned char]`
    (msvc-pretty-enums.rs:97) `    [+0x000] __1              : true [Type: bool]`
    (msvc-pretty-enums.rs:100) `niche_w_fields_3_niche1,d : B [Type: enum2$<msvc_pretty_enums::NicheLayoutWithFields3>]`
    (msvc-pretty-enums.rs:101) `    [+0x001] __0              : 12 [Type: unsigned char]`
    (msvc-pretty-enums.rs:104) `niche_w_fields_3_niche2,d : C [Type: enum2$<msvc_pretty_enums::NicheLayoutWithFields3>]`
    (msvc-pretty-enums.rs:105) `    [+0x001] __0              : false [Type: bool]`
    (msvc-pretty-enums.rs:108) `niche_w_fields_3_niche3,d : D [Type: enum2$<msvc_pretty_enums::NicheLayoutWithFields3>]`
    (msvc-pretty-enums.rs:109) `    [+0x001] __0              : 34 [Type: unsigned char]`
    (msvc-pretty-enums.rs:112) `niche_w_fields_3_niche4,d : E [Type: enum2$<msvc_pretty_enums::NicheLayoutWithFields3>]`
    (msvc-pretty-enums.rs:113) `    [+0x001] __0              : 56 [Type: unsigned char]`
    (msvc-pretty-enums.rs:116) `niche_w_fields_3_niche5,d : F [Type: enum2$<msvc_pretty_enums::NicheLayoutWithFields3>]`
    (msvc-pretty-enums.rs:119) `niche_w_fields_std_result_ok,d : Ok [Type: enum2$<core::result::Result<alloc::boxed::Box<slice2$<u8>,alloc::alloc::Global>,u64> >]`
    (msvc-pretty-enums.rs:120) `    [+0x000] __0              [Type: alloc::boxed::Box<slice2$<u8>,alloc::alloc::Global>]`
    (msvc-pretty-enums.rs:121) `        [+0x000] data_ptr         : 0x1e79e280d70 : 1 [Type: unsigned char *]`
    (msvc-pretty-enums.rs:122) `        [+0x008] length           : 3 [Type: unsigned __int64]`
    (msvc-pretty-enums.rs:125) `niche_w_fields_std_result_err,d : Err [Type: enum2$<core::result::Result<alloc::boxed::Box<slice2$<u8>,alloc::alloc::Global>,u64> >]`
    (msvc-pretty-enums.rs:126) `    [+0x008] __0              : 789 [Type: unsigned __int64]`
    (msvc-pretty-enums.rs:129) `arbitrary_discr1,d : Abc [Type: enum2$<msvc_pretty_enums::ArbitraryDiscr>]`
    (msvc-pretty-enums.rs:130) `    [+0x004] __0              : 1234 [Type: unsigned int]`
    (msvc-pretty-enums.rs:133) `arbitrary_discr2,d : Def [Type: enum2$<msvc_pretty_enums::ArbitraryDiscr>]`
    (msvc-pretty-enums.rs:134) `    [+0x004] __0              : 5678 [Type: unsigned int]`
status: exit code: 0
command: PATH="C:\a\rust\rust\build\x86_64-pc-windows-msvc\stage2\lib\rustlib\x86_64-pc-windows-msvc\lib;C:\Program Files (x86)\Windows Kits\10\bin\x64;C:\Program Files (x86)\Windows Kits\10\bin\10.0.22621.0\x64;C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise\VC\Tools\MSVC\14.29.30133\bin\HostX64\x64;C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise\VC\Tools\MSVC\14.29.30133\bin\HostX64\x64;C:\a\rust\rust\build\x86_64-pc-windows-msvc\stage0-bootstrap-tools\x86_64-pc-windows-msvc\release\deps;C:\a\rust\rust\build\x86_64-pc-windows-msvc\stage0\bin;C:\Program Files\PowerShell\7;C:\a\rust\rust\ninja;C:\a\rust\rust\msys2\mingw64\bin;C:\hostedtoolcache\windows\Python\3.12.1\x64\Scripts;C:\hostedtoolcache\windows\Python\3.12.1\x64;C:\msys64\usr\bin;C:\a\rust\rust\sccache;C:\Program Files\MongoDB\Server\5.0\bin;C:\aliyun-cli;C:\vcpkg;C:\cf-cli;C:\Program Files (x86)\NSIS;C:\tools\zstd;C:\Program Files\Mercurial;C:\hostedtoolcache\windows\stack\2.13.1\x64;C:\cabal\bin;C:\ghcup\bin;C:\mingw64\bin;C:\Program Files\dotnet;C:\Program Files\MySQL\MySQL Server 5.7\bin;C:\Program Files\R\R-4.3.2\bin\x64;C:\SeleniumWebDrivers\GeckoDriver;C:\SeleniumWebDrivers\EdgeDriver;C:\SeleniumWebDrivers\ChromeDriver;C:\Program Files (x86)\sbt\bin;C:\Program Files (x86)\GitHub CLI;C:\Program Files\Git\bin;C:\Program Files (x86)\pipx_bin;C:\npm\prefix;C:\hostedtoolcache\windows\go\1.20.13\x64\bin;C:\hostedtoolcache\windows\Python\3.7.9\x64\Scripts;C:\hostedtoolcache\windows\Python\3.7.9\x64;C:\hostedtoolcache\windows\Ruby\2.5.9\x64\bin;C:\Program Files\OpenSSL\bin;C:\tools\kotlinc\bin;C:\hostedtoolcache\windows\Java_Temurin-Hotspot_jdk\8.0.392-8\x64\bin;C:\Program Files\ImageMagick-7.1.1-Q16-HDRI;C:\Program Files\Microsoft SDKs\Azure\CLI2\wbin;C:\ProgramData\kind;C:\Program Files\Eclipse Foundation\jdk-8.0.302.8-hotspot\bin;C:\ProgramData\Chocolatey\bin;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0;C:\Windows\System32\OpenSSH;C:\Program Files\PowerShell\7;C:\Program Files\Microsoft\Web Platform Installer;C:\Program Files\Microsoft SQL Server\130\Tools\Binn;C:\Program Files\Microsoft SQL Server\Client SDK\ODBC\170\Tools\Binn;C:\Program Files (x86)\Windows Kits\10\Windows Performance Toolkit;C:\Program Files (x86)\Microsoft SQL Server\110\DTS\Binn;C:\Program Files (x86)\Microsoft SQL Server\120\DTS\Binn;C:\Program Files (x86)\Microsoft SQL Server\130\DTS\Binn;C:\Program Files (x86)\Microsoft SQL Server\140\DTS\Binn;C:\Program Files (x86)\Microsoft SQL Server\150\DTS\Binn;C:\Program Files (x86)\Microsoft SQL Server\160\DTS\Binn;C:\Strawberry\c\bin;C:\Strawberry\perl\site\bin;C:\Strawberry\perl\bin;C:\ProgramData\chocolatey\lib\pulumi\tools\Pulumi\bin;C:\Program Files\TortoiseSVN\bin;C:\Program Files\CMake\bin;C:\ProgramData\chocolatey\lib\maven\apache-maven-3.8.7\bin;C:\Program Files\Microsoft Service Fabric\bin\Fabric\Fabric.Code;C:\Program Files\Microsoft SDKs\Service Fabric\Tools\ServiceFabricLocalClusterManager;C:\Program Files\nodejs;C:\Program Files\Git\cmd;C:\Program Files\Git\mingw64\bin;C:\Program Files\Git\usr\bin;C:\Program Files\GitHub CLI;C:\tools\php;C:\Program Files (x86)\sbt\bin;C:\Program Files\Amazon\AWSCLIV2;C:\Program Files\Amazon\SessionManagerPlugin\bin;C:\Program Files\Amazon\AWSSAMCLI\bin;C:\Program Files (x86)\Google\Cloud SDK\google-cloud-sdk\bin;C:\Program Files (x86)\Microsoft BizTalk Server;C:\Program Files\LLVM\bin;C:\Users\runneradmin\.dotnet\tools;C:\Users\runneradmin\.cargo\bin;C:\Users\runneradmin\AppData\Local\Microsoft\WindowsApps" "C:\\Program Files (x86)\\Windows Kits\\10\\Debuggers\\x64\\cdb.exe" "-lines" "-cf" "C:\\a\\rust\\rust\\build\\x86_64-pc-windows-msvc\\test\\debuginfo\\msvc-pretty-enums.cdb\\msvc-pretty-enums.debugger.script" "C:\\a\\rust\\rust\\build\\x86_64-pc-windows-msvc\\test\\debuginfo\\msvc-pretty-enums.cdb\\a.exe"

Microsoft (R) Windows Debugger Version 10.0.22000.832 AMD64
Copyright (c) Microsoft Corporation. All rights reserved.


CommandLine: C:\a\rust\rust\build\x86_64-pc-windows-msvc\test\debuginfo\msvc-pretty-enums.cdb\a.exe

************* Path validation summary **************
Response                         Time (ms)     Location
Deferred                                       srv*
Symbol search path is: srv*
Executable search path is: 
ModLoad: 00007ff7`de900000 00007ff7`de90c000   a.exe   
ModLoad: 00007ffd`b5320000 00007ffd`b550e000   ntdll.dll
ModLoad: 00007ffd`b4aa0000 00007ffd`b4b53000   C:\Windows\System32\KERNEL32.DLL
ModLoad: 00007ffd`b1c90000 00007ffd`b1f2d000   C:\Windows\System32\KERNELBASE.dll
ModLoad: 00007ffd`afaf0000 00007ffd`afb7c000   C:\Windows\SYSTEM32\apphelp.dll
ModLoad: 00007ffd`b2160000 00007ffd`b225a000   C:\Windows\System32\ucrtbase.dll
ModLoad: 00007ffd`78b70000 00007ffd`78b8d000   C:\Windows\SYSTEM32\VCRUNTIME140.dll
ModLoad: 00007ffd`80040000 00007ffd`808f7000   C:\a\rust\rust\build\x86_64-pc-windows-msvc\stage2\lib\rustlib\x86_64-pc-windows-msvc\lib\std-9feeefee46a6656f.dll
ModLoad: 00007ffd`b4e00000 00007ffd`b4ea8000   C:\Windows\System32\ADVAPI32.dll
ModLoad: 00007ffd`b43c0000 00007ffd`b445e000   C:\Windows\System32\msvcrt.dll
ModLoad: 00007ffd`b4c90000 00007ffd`b4d32000   C:\Windows\System32\sechost.dll
ModLoad: 00007ffd`b40c0000 00007ffd`b41de000   C:\Windows\System32\RPCRT4.dll
ModLoad: 00007ffd`b13a0000 00007ffd`b13c6000   C:\Windows\System32\bcrypt.dll
ModLoad: 00007ffd`b3f30000 00007ffd`b3f9d000   C:\Windows\System32\WS2_32.dll
ModLoad: 00007ffd`b1200000 00007ffd`b1229000   C:\Windows\SYSTEM32\USERENV.dll
ModLoad: 00007ffd`b12f0000 00007ffd`b1313000   C:\Windows\System32\profapi.dll
ModLoad: 00007ffd`b0bf0000 00007ffd`b0bfc000   C:\Windows\SYSTEM32\CRYPTBASE.DLL
ModLoad: 00007ffd`b24b0000 00007ffd`b2532000   C:\Windows\System32\bcryptPrimitives.dll
(908.1ac4): Break instruction exception - code 80000003 (first chance)
ntdll!LdrpDoDebuggerBreak+0x30:
00007ffd`b53f25fc cc              int     3
0:000> version
Windows 10 Version 17763 MP (8 procs) Free x64
Product: Server, suite: TerminalServer DataCenter SingleUserTS
Edition build lab: 17763.1.amd64fre.rs5_release.180914-1434
Build layer:            -> 
Build layer:            -> 
Build layer:            -> 
Machine Name:
Debug session time: Thu Jan 25 16:35:35.858 2024 (UTC + 0:00)
System Uptime: 0 days 0:51:50.676
Process Uptime: 0 days 0:00:00.030
  Kernel time: 0 days 0:00:00.000
  User time: 0 days 0:00:00.015
Live user mode: <Local>
Microsoft (R) Windows Debugger Version 10.0.22000.832 AMD64
Copyright (c) Microsoft Corporation. All rights reserved.


command line: '"C:\Program Files (x86)\Windows Kits\10\Debuggers\x64\cdb.exe" -lines -cf C:\a\rust\rust\build\x86_64-pc-windows-msvc\test\debuginfo\msvc-pretty-enums.cdb\msvc-pretty-enums.debugger.script C:\a\rust\rust\build\x86_64-pc-windows-msvc\test\debuginfo\msvc-pretty-enums.cdb\a.exe'  Debugger Process 0x6E8 
dbgeng:  image 10.0.22000.832, 
        [path: C:\Program Files (x86)\Windows Kits\10\Debuggers\x64\dbgeng.dll]
dbghelp: image 10.0.22000.832, 
        [path: C:\Program Files (x86)\Windows Kits\10\Debuggers\x64\dbghelp.dll]
        DIA version: 29395
Extension DLL search Path:
Build completed unsuccessfully in 0:40:07
    C:\Program Files (x86)\Windows Kits\10\Debuggers\x64\WINXP;C:\Program Files (x86)\Windows Kits\10\Debuggers\x64\winext;C:\Program Files (x86)\Windows Kits\10\Debuggers\x64\winext\arcade;C:\Program Files (x86)\Windows Kits\10\Debuggers\x64\pri;C:\Program Files (x86)\Windows Kits\10\Debuggers\x64;C:\Users\runneradmin\AppData\Local\Dbg\EngineExtensions;C:\Program Files (x86)\Windows Kits\10\Debuggers\x64;C:\a\rust\rust\build\x86_64-pc-windows-msvc\stage2\lib\rustlib\x86_64-pc-windows-msvc\lib;C:\Program Files (x86)\Windows Kits\10\bin\x64;C:\Program Files (x86)\Windows Kits\10\bin\10.0.22621.0\x64;C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise\VC\Tools\MSVC\14.29.30133\bin\HostX64\x64;C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise\VC\Tools\MSVC\14.29.30133\bin\HostX64\x64;C:\a\rust\rust\build\x86_64-pc-windows-msvc\stage0-bootstrap-tools\x86_64-pc-windows-msvc\release\deps;C:\a\rust\rust\build\x86_64-pc-windows-msvc\stage0\bin;C:\Program Files\PowerShell\7;C:\a\rust\rust\ninja;C:\a\rust\rust\msys2\mingw64\bin;C:\hostedtoolcache\windows\Python\3.12.1\x64\Scripts;C:\hostedtoolcache\windows\Python\3.12.1\x64;C:\msys64\usr\bin;C:\a\rust\rust\sccache;C:\Program Files\MongoDB\Server\5.0\bin;C:\aliyun-cli;C:\vcpkg;C:\cf-cli;C:\Program Files (x86)\NSIS;C:\tools\zstd;C:\Program Files\Mercurial;C:\hostedtoolcache\windows\stack\2.13.1\x64;C:\cabal\bin;C:\ghcup\bin;C:\mingw64\bin;C:\Program Files\dotnet;C:\Program Files\MySQL\MySQL Server 5.7\bin;C:\Program Files\R\R-4.3.2\bin\x64;C:\SeleniumWebDrivers\GeckoDriver;C:\SeleniumWebDrivers\EdgeDriver;C:\SeleniumWebDrivers\ChromeDriver;C:\Program Files (x86)\sbt\bin;C:\Program Files (x86)\GitHub CLI;C:\Program Files\Git\bin;C:\Program Files (x86)\pipx_bin;C:\npm\prefix;C:\hostedtoolcache\windows\go\1.20.13\x64\bin;C:\hostedtoolcache\windows\Python\3.7.9\x64\Scripts;C:\hostedtoolcache\windows\Python\3.7.9\x64;C:\hostedtoolcache\windows\Ruby\2.5.9\x64\bin;C:\Program Files\OpenSSL\bin;C:\tools\kotlinc\bin;C:\hostedtoolcache\windows\Java_Temurin-Hotspot_jdk\8.0.392-8\x64\bin;C:\Program Files\ImageMagick-7.1.1-Q16-HDRI;C:\Program Files\Microsoft SDKs\Azure\CLI2\wbin;C:\ProgramData\kind;C:\Program Files\Eclipse Foundation\jdk-8.0.302.8-hotspot\bin;C:\ProgramData\Chocolatey\bin;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0;C:\Windows\System32\OpenSSH;C:\Program Files\PowerShell\7;C:\Program Files\Microsoft\Web Platform Installer;C:\Program Files\Microsoft SQL Server\130\Tools\Binn;C:\Program Files\Microsoft SQL Server\Client SDK\ODBC\170\Tools\Binn;C:\Program Files (x86)\Windows Kits\10\Windows Performance Toolkit;C:\Program Files (x86)\Microsoft SQL Server\110\DTS\Binn;C:\Program Files (x86)\Microsoft SQL Server\120\DTS\Binn;C:\Program Files (x86)\Microsoft SQL Server\130\DTS\Binn;C:\Program Files (x86)\Microsoft SQL Server\140\DTS\Binn;C:\Program Files (x86)\Microsoft SQL Server\150\DTS\Binn;C:\Program Files (x86)\Microsoft SQL Server\160\DTS\Binn;C:\Strawberry\c\bin;C:\Strawberry\perl\site\bin;C:\Strawberry\perl\bin;C:\ProgramData\chocolatey\lib\pulumi\tools\Pulumi\bin;C:\Program Files\TortoiseSVN\bin;C:\Program Files\CMake\bin;C:\ProgramData\chocolatey\lib\maven\apache-maven-3.8.7\bin;C:\Program Files\Microsoft Service Fabric\bin\Fabric\Fabric.Code;C:\Program Files\Microsoft SDKs\Service Fabric\Tools\ServiceFabricLocalClusterManager;C:\Program Files\nodejs;C:\Program Files\Git\cmd;C:\Program Files\Git\mingw64\bin;C:\Program Files\Git\usr\bin;C:\Program Files\GitHub CLI;C:\tools\php;C:\Program Files (x86)\sbt\bin;C:\Program Files\Amazon\AWSCLIV2;C:\Program Files\Amazon\SessionManagerPlugin\bin;C:\Program Files\Amazon\AWSSAMCLI\bin;C:\Program Files (x86)\Google\Cloud SDK\google-cloud-sdk\bin;C:\Program Files (x86)\Microsoft BizTalk Server;C:\Program Files\LLVM\bin;C:\Users\runneradmin\.dotnet\tools;C:\Users\runneradmin\.cargo\bin;C:\Users\runneradmin\AppData\Local\Microsoft\WindowsApps
Extension DLL chain:
    dbghelp: image 10.0.22000.832, API 10.0.6, 
        [path: C:\Program Files (x86)\Windows Kits\10\Debuggers\x64\dbghelp.dll]
    ext: image 10.0.22000.832, API 1.0.0, 
        [path: C:\Program Files (x86)\Windows Kits\10\Debuggers\x64\winext\ext.dll]
    exts: image 10.0.22000.832, API 1.0.0, 
        [path: C:\Program Files (x86)\Windows Kits\10\Debuggers\x64\WINXP\exts.dll]
    uext: image 10.0.22000.832, API 1.0.0, 
        [path: C:\Program Files (x86)\Windows Kits\10\Debuggers\x64\winext\uext.dll]
    ntsdexts: image 10.0.22000.832, API 1.0.0, 
        [path: C:\Program Files (x86)\Windows Kits\10\Debuggers\x64\WINXP\ntsdexts.dll]
0:000> .nvlist
Loaded NatVis Files:
    <None Loaded>
0:000> bp `msvc-pretty-enums.rs:243`
*** WARNING: Unable to verify checksum for a.exe
0:000>  g
Breakpoint 0 hit
a!msvc_pretty_enums::main+0x340:
00007ff7`de904e70 e8bb000000      call    a!msvc_pretty_enums::zzz (00007ff7`de904f30)
0:000>  dx a
a                : Some [Type: enum2$<core::option::Option<msvc_pretty_enums::CStyleEnum> >]
    [<Raw View>]     [Type: enum2$<core::option::Option<msvc_pretty_enums::CStyleEnum> >]
    [+0x000] __0              : Low (0x2) [Type: msvc_pretty_enums::CStyleEnum]
0:000>  dx b
b                : None [Type: enum2$<core::option::Option<msvc_pretty_enums::CStyleEnum> >]
    [<Raw View>]     [Type: enum2$<core::option::Option<msvc_pretty_enums::CStyleEnum> >]
0:000>  dx c
c                : Tag1 [Type: enum2$<msvc_pretty_enums::NicheLayoutEnum>]
    [<Raw View>]     [Type: enum2$<msvc_pretty_enums::NicheLayoutEnum>]
0:000>  dx d
d                : Data [Type: enum2$<msvc_pretty_enums::NicheLayoutEnum>]
    [<Raw View>]     [Type: enum2$<msvc_pretty_enums::NicheLayoutEnum>]
    [+0x000] my_data          : High (0x10) [Type: msvc_pretty_enums::CStyleEnum]
0:000>  dx e
e                : Tag2 [Type: enum2$<msvc_pretty_enums::NicheLayoutEnum>]
    [<Raw View>]     [Type: enum2$<msvc_pretty_enums::NicheLayoutEnum>]
0:000>  dx f
f                : Some [Type: enum2$<core::option::Option<ref$<u32> > >]
    [<Raw View>]     [Type: enum2$<core::option::Option<ref$<u32> > >]
    [+0x000] __0              : 0x7ff7de906af0 : 0x1 [Type: unsigned int *]
0:000>  dx g
g                : None [Type: enum2$<core::option::Option<ref$<u32> > >]
    [<Raw View>]     [Type: enum2$<core::option::Option<ref$<u32> > >]
0:000>  dx h
h                : Some [Type: enum2$<core::option::Option<u32> >]
    [<Raw View>]     [Type: enum2$<core::option::Option<u32> >]
    [+0x004] __0              : 0xc [Type: unsigned int]
0:000>  dx i
i                : None [Type: enum2$<core::option::Option<u32> >]
    [<Raw View>]     [Type: enum2$<core::option::Option<u32> >]
0:000>  dx j
j                : High (0x10) [Type: msvc_pretty_enums::CStyleEnum]
0:000>  dx k
k                : Some [Type: enum2$<core::option::Option<alloc::string::String> >]
    [<Raw View>]     [Type: enum2$<core::option::Option<alloc::string::String> >]
    [+0x000] __0              : "IAMA optional string!" [Type: alloc::string::String]
0:000>  dx l
l                : Ok [Type: enum2$<core::result::Result<u32,enum2$<msvc_pretty_enums::Empty> > >]
    [<Raw View>]     [Type: enum2$<core::result::Result<u32,enum2$<msvc_pretty_enums::Empty> > >]
    [+0x000] __0              : 0x2a [Type: unsigned int]
0:000>  dx niche128_some
niche128_some    : Some [Type: enum2$<core::option::Option<core::num::nonzero::NonZero<i128> > >]
    [<Raw View>]     [Type: enum2$<core::option::Option<core::num::nonzero::NonZero<i128> > >]
    [+0x000] __0              [Type: core::num::nonzero::NonZero<i128>]
0:000>  dx niche128_none
niche128_none    : None [Type: enum2$<core::option::Option<core::num::nonzero::NonZero<i128> > >]
    [<Raw View>]     [Type: enum2$<core::option::Option<core::num::nonzero::NonZero<i128> > >]
0:000>  dx wrapping_niche128_untagged
wrapping_niche128_untagged : X [Type: enum2$<msvc_pretty_enums::Wrapping128Niche>]
    [<Raw View>]     [Type: enum2$<msvc_pretty_enums::Wrapping128Niche>]
    [+0x000] __0              [Type: msvc_pretty_enums::Wrapping128]
0:000>  dx wrapping_niche128_none1
wrapping_niche128_none1 : Y [Type: enum2$<msvc_pretty_enums::Wrapping128Niche>]
    [<Raw View>]     [Type: enum2$<msvc_pretty_enums::Wrapping128Niche>]
    [+0x000] __0              [Type: msvc_pretty_enums::Wrapping128]
0:000>  dx wrapping_niche128_none2
wrapping_niche128_none2 : Z [Type: enum2$<msvc_pretty_enums::Wrapping128Niche>]
    [<Raw View>]     [Type: enum2$<msvc_pretty_enums::Wrapping128Niche>]
    [+0x000] __0              [Type: msvc_pretty_enums::Wrapping128]
0:000>  dx direct_tag_128_a,d
direct_tag_128_a,d : A [Type: enum2$<msvc_pretty_enums::DirectTag128>]
    [<Raw View>]     [Type: enum2$<msvc_pretty_enums::DirectTag128>]
    [+0x010] __0              : 42 [Type: unsigned int]
0:000>  dx direct_tag_128_b,d
direct_tag_128_b,d : B [Type: enum2$<msvc_pretty_enums::DirectTag128>]
    [<Raw View>]     [Type: enum2$<msvc_pretty_enums::DirectTag128>]
    [+0x010] __0              : 137 [Type: unsigned int]
0:000>  dx niche_w_fields_1_some,d
niche_w_fields_1_some,d : A [Type: enum2$<msvc_pretty_enums::NicheLayoutWithFields1>]
    [<Raw View>]     [Type: enum2$<msvc_pretty_enums::NicheLayoutWithFields1>]
    [+0x008] __0              : 0x7ff7de906b58 : 77 [Type: unsigned char *]
    [+0x004] __1              : 7 [Type: unsigned int]
0:000>  dx niche_w_fields_1_none,d
niche_w_fields_1_none,d : B [Type: enum2$<msvc_pretty_enums::NicheLayoutWithFields1>]
    [<Raw View>]     [Type: enum2$<msvc_pretty_enums::NicheLayoutWithFields1>]
    [+0x004] __0              : 99 [Type: unsigned int]
0:000>  dx niche_w_fields_2_some,d
niche_w_fields_2_some,d : A [Type: enum2$<msvc_pretty_enums::NicheLayoutWithFields2>]
    [<Raw View>]     [Type: enum2$<msvc_pretty_enums::NicheLayoutWithFields2>]
    [+0x004] __0              : 800 [Type: core::num::nonzero::NonZero<u32>]
    [+0x008] __1              : 900 [Type: unsigned __int64]
0:000>  dx niche_w_fields_2_none,d
niche_w_fields_2_none,d : B [Type: enum2$<msvc_pretty_enums::NicheLayoutWithFields2>]
    [<Raw View>]     [Type: enum2$<msvc_pretty_enums::NicheLayoutWithFields2>]
    [+0x008] __0              : 1000 [Type: unsigned __int64]
0:000>  dx niche_w_fields_3_some,d
niche_w_fields_3_some,d : A [Type: enum2$<msvc_pretty_enums::NicheLayoutWithFields3>]
    [<Raw View>]     [Type: enum2$<msvc_pretty_enums::NicheLayoutWithFields3>]
    [+0x001] __0              : 137 [Type: unsigned char]
    [+0x000] __1              : true [Type: bool]
0:000>  dx niche_w_fields_3_niche1,d
niche_w_fields_3_niche1,d : B [Type: enum2$<msvc_pretty_enums::NicheLayoutWithFields3>]
    [<Raw View>]     [Type: enum2$<msvc_pretty_enums::NicheLayoutWithFields3>]
    [+0x001] __0              : 12 [Type: unsigned char]
0:000>  dx niche_w_fields_3_niche2,d
niche_w_fields_3_niche2,d : C [Type: enum2$<msvc_pretty_enums::NicheLayoutWithFields3>]
    [<Raw View>]     [Type: enum2$<msvc_pretty_enums::NicheLayoutWithFields3>]
    [+0x001] __0              : false [Type: bool]
0:000>  dx niche_w_fields_3_niche3,d
niche_w_fields_3_niche3,d : D [Type: enum2$<msvc_pretty_enums::NicheLayoutWithFields3>]
    [<Raw View>]     [Type: enum2$<msvc_pretty_enums::NicheLayoutWithFields3>]
    [+0x001] __0              : 34 [Type: unsigned char]
0:000>  dx niche_w_fields_3_niche4,d
niche_w_fields_3_niche4,d : E [Type: enum2$<msvc_pretty_enums::NicheLayoutWithFields3>]
    [<Raw View>]     [Type: enum2$<msvc_pretty_enums::NicheLayoutWithFields3>]
    [+0x001] __0              : 56 [Type: unsigned char]
0:000>  dx niche_w_fields_3_niche5,d
niche_w_fields_3_niche5,d : F [Type: enum2$<msvc_pretty_enums::NicheLayoutWithFields3>]
    [<Raw View>]     [Type: enum2$<msvc_pretty_enums::NicheLayoutWithFields3>]
0:000>  dx -r3 niche_w_fields_std_result_ok,d
niche_w_fields_std_result_ok,d : Ok [Type: enum2$<core::result::Result<alloc::boxed::Box<slice2$<u8>,alloc::alloc::Global>,u64> >]
    [<Raw View>]     [Type: enum2$<core::result::Result<alloc::boxed::Box<slice2$<u8>,alloc::alloc::Global>,u64> >]
    [+0x000] __0              [Type: alloc::boxed::Box<slice2$<u8>,alloc::alloc::Global>]
        [+0x000] data_ptr         : 0x1e79e280d70 : 1 [Type: unsigned char *]
            1 [Type: unsigned char]
        [+0x008] length           : 3 [Type: unsigned __int64]
0:000>  dx -r3 niche_w_fields_std_result_err,d
niche_w_fields_std_result_err,d : Err [Type: enum2$<core::result::Result<alloc::boxed::Box<slice2$<u8>,alloc::alloc::Global>,u64> >]
    [<Raw View>]     [Type: enum2$<core::result::Result<alloc::boxed::Box<slice2$<u8>,alloc::alloc::Global>,u64> >]
    [+0x008] __0              : 789 [Type: unsigned __int64]
0:000>  dx -r2 arbitrary_discr1,d
arbitrary_discr1,d : Abc [Type: enum2$<msvc_pretty_enums::ArbitraryDiscr>]
    [<Raw View>]     [Type: enum2$<msvc_pretty_enums::ArbitraryDiscr>]
    [+0x004] __0              : 1234 [Type: unsigned int]
0:000>  dx -r2 arbitrary_discr2,d
arbitrary_discr2,d : Def [Type: enum2$<msvc_pretty_enums::ArbitraryDiscr>]
    [<Raw View>]     [Type: enum2$<msvc_pretty_enums::ArbitraryDiscr>]
    [+0x004] __0              : 5678 [Type: unsigned int]
0:000> qq
quit:
NatVis script unloaded from 'C:\Program Files (x86)\Windows Kits\10\Debuggers\x64\Visualizers\atlmfc.natvis'
NatVis script unloaded from 'C:\Program Files (x86)\Windows Kits\10\Debuggers\x64\Visualizers\ObjectiveC.natvis'
NatVis script unloaded from 'C:\Program Files (x86)\Windows Kits\10\Debuggers\x64\Visualizers\concurrency.natvis'
NatVis script unloaded from 'C:\Program Files (x86)\Windows Kits\10\Debuggers\x64\Visualizers\cpp_rest.natvis'
NatVis script unloaded from 'C:\Program Files (x86)\Windows Kits\10\Debuggers\x64\Visualizers\stl.natvis'
NatVis script unloaded from 'C:\Program Files (x86)\Windows Kits\10\Debuggers\x64\Visualizers\Windows.Data.Json.natvis'
NatVis script unloaded from 'C:\Program Files (x86)\Windows Kits\10\Debuggers\x64\Visualizers\Windows.Devices.Geolocation.natvis'
NatVis script unloaded from 'C:\Program Files (x86)\Windows Kits\10\Debuggers\x64\Visualizers\Windows.Devices.Sensors.natvis'
NatVis script unloaded from 'C:\Program Files (x86)\Windows Kits\10\Debuggers\x64\Visualizers\Windows.Media.natvis'
NatVis script unloaded from 'C:\Program Files (x86)\Windows Kits\10\Debuggers\x64\Visualizers\windows.natvis'
NatVis script unloaded from 'C:\Program Files (x86)\Windows Kits\10\Debuggers\x64\Visualizers\winrt.natvis'
stderr: none




failures:
    [debuginfo-cdb] tests\debuginfo\msvc-pretty-enums.rs

test result: FAILED. 136 passed; 1 failed; 18 ignored; 0 measured; 0 filtered out; finished in 19.22s

Some tests failed in compiletest suite=debuginfo mode=debuginfo host=x86_64-pc-windows-msvc target=x86_64-pc-windows-msvc
make: *** [Makefile:73: ci-msvc-ps1] Error 1
  network time: Thu, 25 Jan 2024 16:35:43 GMT
##[error]Process completed with exit code 2.
Post job cleanup.
[command]"C:\Program Files\Git\bin\git.exe" version

@bors
Copy link
Contributor

bors commented Jan 25, 2024

💔 Test failed - checks-actions

@bors bors added S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. and removed S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. labels Jan 25, 2024
@matthiaskrgr matthiaskrgr deleted the rollup-55yg7us branch March 16, 2024 18:18
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
O-linux Operating system: Linux O-unix Operating system: Unix-like rollup A PR which is a rollup S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. T-compiler Relevant to the compiler team, which will review and decide on the PR/issue. T-libs Relevant to the library team, which will review and decide on the PR/issue. T-rustdoc Relevant to the rustdoc team, which will review and decide on the PR/issue.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

10 participants