microsoft / microsoft/wdkmetadata

Investigate references from WDK metadata to per-architecture types like CONTEXT and SLIST_HEADER in the SDK metadata

Open
#23 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
C++
Stars
110
Forks
15
PR merge metrics
No merged PRs in 30d

Description

The below were temporarily excluded with https://github.com/microsoft/wdkmetadata/commit/d4d6095aeb89cf1437eb648691474e8bd1dcab3c#diff-a02962413f2cd0360613fa6a55753e08d3c32eebf64ecb27951a9a91f7aa4214 since the build couldn't resolve the types with multiple definitions per architecture.

_GENERAL_LOOKASIDE
_GENERAL_LOOKASIDE_POOL
_LOOKASIDE_LIST_EX
_NPAGED_LOOKASIDE_LIST
_PAGED_LOOKASIDE_LIST
ALLOCATE_FUNCTION_EX
ExDeleteLookasideListEx
ExDeleteNPagedLookasideList
ExDeletePagedLookasideList
ExFlushLookasideListEx
ExInitializeLookasideListEx
ExInitializeNPagedLookasideList
ExInitializePagedLookasideList
FirstEntrySList
FREE_FUNCTION_EX
InterlockedPushListSList
_NET_BUFFER
_NET_BUFFER_HEADER
_NET_BUFFER_LIST
_NET_BUFFER_LIST_HEADER

Example error message:

error CS0433: The type 'SLIST_HEADER' exists in both 'Windows.Win32.winmd, Version=47.0.26.58549, Culture=neutral, PublicKeyToken=null' and 'Windows.Win32.winmd, Version=47.0.26.58549, Culture=neutral, PublicKeyToken=null' [C:\wdkmetadata\generation\WDK\Windows.Wdk.proj]

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start with the referenced exclusion commit and generation/WDK/Windows.Wdk.proj, then reproduce the CS0433 duplicate-definition error for SLIST_HEADER. Review how the listed per-architecture types are referenced in the metadata; done means the build resolves them without conflicting definitions.

Written by the indexing model from the issue text.

Assessment

Tech stack
cpp, csharp
Domain
build-system, tooling
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.