Uh oh!
There was an error while loading. Please reload this page.
Remove dead fIs80Plus parameter from IMDInternalImport::GetUserString - #129777
Conversation
Co-authored-by: AaronRobinsonMSFT <30635565+AaronRobinsonMSFT@users.noreply.github.com>
Tagging subscribers to this area: @agocke |
There was a problem hiding this comment.
Pull request overview
This PR updates the CoreCLR internal metadata import interface (IMDInternalImport) by removing a no-longer-used output parameter from GetUserString, and then mechanically fixes up the corresponding implementations and callers across the VM, metadata layers, and ILDASM.
Changes:
- Removes the dead
pbIs80Plus/fIs80Plusoutput parameter fromIMDInternalImport::GetUserString(interface + implementations). - Updates all in-repo call sites to use the new 3-parameter signature.
- Cleans up now-unused locals and assignment logic related to the removed parameter.
Reviewed changes
Copilot reviewed 10 out of 10 changed files in this pull request and generated no comments.
Show a summary per file
| File | Description |
|---|---|
| src/coreclr/inc/metadata.h | Updates IMDInternalImport::GetUserString signature to drop the dead out-parameter. |
| src/coreclr/md/runtime/mdinternalro.h | Updates MDInternalRO::GetUserString declaration to match the new interface signature. |
| src/coreclr/md/runtime/mdinternalro.cpp | Removes the unused pfIs80Plus handling logic from MDInternalRO::GetUserString. |
| src/coreclr/md/inc/mdinternalrw.h | Updates MDInternalRW::GetUserString declaration to match the new interface signature. |
| src/coreclr/md/enc/mdinternalrw.cpp | Removes the unused pfIs80Plus handling logic from MDInternalRW::GetUserString. |
| src/coreclr/vm/ceeload.cpp | Removes now-unused local and updates the GetUserString call in string initialization. |
| src/coreclr/vm/managedmdimport.cpp | Updates the FCALL wrapper to call the new GetUserString signature and removes unused local. |
| src/coreclr/vm/jitinterface.cpp | Updates JIT/EE interface usage to the new GetUserString signature. |
| src/coreclr/ildasm/dis.cpp | Updates ILDASM token pretty-printer to call the new GetUserString signature. |
| src/coreclr/vm/readytorunstandalonemethodmetadata.cpp | Updates ReadyToRun standalone metadata helper to call the new GetUserString signature. |
AaronRobinsonMSFT
commented
Jun 24, 2026
👎 |
jkotas
commented
Jun 24, 2026
/ba-g Arm64 failures are known issue #129738 |
Uh oh!
There was an error while loading. Please reload this page.
…ing` (#129777) The `fIs80Plus`/`pbIs80Plus` output parameter on `IMDInternalImport::GetUserString` was dead — all call sites either passed `NULL` or ignored the value. Remove it from the interface, both implementations (`MDInternalRO`, `MDInternalRW`), and all call sites. **Changes:** - `src/coreclr/inc/metadata.h` — Drop `BOOL *pbIs80Plus` from `IMDInternalImport::GetUserString` pure virtual - `src/coreclr/md/runtime/mdinternalro.h` / `mdinternalro.cpp` — Remove param and all `pfIs80Plus` null-guard/assignment logic - `src/coreclr/md/inc/mdinternalrw.h` / `enc/mdinternalrw.cpp` — Same - `src/coreclr/vm/ceeload.cpp` — Drop `BOOL fIs80Plus` local; remove from call - `src/coreclr/vm/managedmdimport.cpp` — Drop `BOOL bHasExtendedChars` local; remove from call - `src/coreclr/vm/jitinterface.cpp`, `ildasm/dis.cpp`, `vm/readytorunstandalonemethodmetadata.cpp` — Remove `NULL` arg from calls Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com> Co-authored-by: AaronRobinsonMSFT <30635565+AaronRobinsonMSFT@users.noreply.github.com>
The
fIs80Plus/pbIs80Plusoutput parameter onIMDInternalImport::GetUserStringwas dead — all call sites either passedNULLor ignored the value. Remove it from the interface, both implementations (MDInternalRO,MDInternalRW), and all call sites.Changes:
src/coreclr/inc/metadata.h— DropBOOL *pbIs80PlusfromIMDInternalImport::GetUserStringpure virtualsrc/coreclr/md/runtime/mdinternalro.h/mdinternalro.cpp— Remove param and allpfIs80Plusnull-guard/assignment logicsrc/coreclr/md/inc/mdinternalrw.h/enc/mdinternalrw.cpp— Samesrc/coreclr/vm/ceeload.cpp— DropBOOL fIs80Pluslocal; remove from callsrc/coreclr/vm/managedmdimport.cpp— DropBOOL bHasExtendedCharslocal; remove from callsrc/coreclr/vm/jitinterface.cpp,ildasm/dis.cpp,vm/readytorunstandalonemethodmetadata.cpp— RemoveNULLarg from calls