microsoft / microsoft/STL

`<cuchar>`: `mbrtoc8()` and `c8rtomb()` are not yet implemented

Open
#2,207 9 comments 5 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

bug UCRT
Dominant language
C++
Stars
11.1k
Forks
1.7k
Avg merge
4d 15h
Merged PRs (30d)
22

Description

WG21-N4892 [cuchar.syn] specifies:

size_t mbrtoc8(char8_t* pc8, const char* s, size_t n, mbstate_t* ps);
size_t c8rtomb(char* s, char8_t c8, mbstate_t* ps);

These functions are not yet implemented in the UCRT, so they aren't mentioned in our <cuchar>:

https://github.com/microsoft/STL/blob/d6f9987d7ec694b8599fe21e87e3653c36566223/stl/inc/cuchar#L21-L28

@amyw-msft filed internal task OS-25681113 "Implement mbrtoc8, c8rtomb" to implement them in the UCRT. Until then, changes to <cuchar> are blocked.

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

Read stl/inc/cuchar and the WG21-N4892 [cuchar.syn] specification to confirm the required declarations. Check the status of the referenced UCRT task OS-25681113 first; this issue is done only when the UCRT functions are available and can mention them.

Written by the indexing model from the issue text.

Assessment

Tech stack
cpp
Domain
compilers
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Clearly specified
Newbie friendliness
20/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.