Repository navigation
Build the native lifetime test with MSVC - #45
Merged
Merged
Conversation
The lifetime test includes private Core headers that use namespace std before windows.h. The full windows.h then declares the RPC byte typedef, which MSVC reports as ambiguous with std::byte, so both native Windows jobs of Release Artifacts failed to compile the test. Define WIN32_LEAN_AND_MEAN; the test only needs the virtual memory API.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Release Artifacts for the 0.2.4 merge (run 40926228094) failed on both native Windows jobs (x64 and ARM64) while compiling
tests/cpp/test_legacy_lifetime.cpp, which was added in PR #43:The test includes private Core headers that use
namespace stdbeforewindows.h. The fullwindows.hthen declares the RPCbytetypedef, which MSVC reports as ambiguous withstd::byte. The test only needs the virtual memory API, so it now definesWIN32_LEAN_AND_MEANbefore includingwindows.h.The change is inside
#ifdef _WIN32, so macOS and Linux builds are unchanged. Pull request CI does not build native Windows targets; the Windows compile and thelegacy.lifetimetest run in Release Artifacts after this merges to main. 0.2.4 is tagged only after that run passes.