{"id":19730553,"url":"https://github.com/begriffs/wchar-conformance","last_synced_at":"2025-08-25T10:13:45.109Z","repository":{"id":141768224,"uuid":"256882498","full_name":"begriffs/wchar-conformance","owner":"begriffs","description":"Test ISO 10646 conformance of wchar_t","archived":false,"fork":false,"pushed_at":"2020-04-19T16:12:27.000Z","size":3,"stargazers_count":5,"open_issues_count":1,"forks_count":0,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-05-08T03:12:58.169Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"C","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/begriffs.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2020-04-19T00:38:24.000Z","updated_at":"2024-05-26T00:04:49.000Z","dependencies_parsed_at":null,"dependency_job_id":"fb5ea2a8-33dd-4785-91b9-fc4effbcb46f","html_url":"https://github.com/begriffs/wchar-conformance","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/begriffs/wchar-conformance","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/begriffs%2Fwchar-conformance","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/begriffs%2Fwchar-conformance/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/begriffs%2Fwchar-conformance/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/begriffs%2Fwchar-conformance/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/begriffs","download_url":"https://codeload.github.com/begriffs/wchar-conformance/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/begriffs%2Fwchar-conformance/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":272045402,"owners_count":24864021,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-08-25T02:00:12.092Z","response_time":1107,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-11-12T00:16:45.959Z","updated_at":"2025-08-25T10:13:45.083Z","avatar_url":"https://github.com/begriffs.png","language":"C","funding_links":[],"categories":[],"sub_categories":[],"readme":"## wchar\\_t ISO 10646 conformance test\n\nThe C99 spec, in 6.10.8 \"Predefined macro names\" says that the symbol\n`__STDC_ISO_10646__` will be present in C implementations that support storing\nUnicode codepoints (more accurately, UTF-32 code units) in `wchar_t`.\n\nThe standard describes the symbol like this:\n\n\u003e An integer constant of the form yyyymmL (for example, 199712L). If this\n\u003e symbol is defined, then every character in the Unicode required set, when\n\u003e stored in an object of type wchar\\_t, has the same value as the short\n\u003e identifier of that character. The Unicode required set consists of all the\n\u003e characters that are defined by ISO/IEC 10646, along with all amendments and\n\u003e technical corrigenda, as of the specified year and month.\n\nThis repo contains a program \"w\" to test the implementation. It works like this:\n\n* Generate every codepoint\n* (Skip codepoints that are part of surrogate pairs)\n* Convert the codepoint to a UTF-8 string\n* Convert the UTF-8 to wchar\\_t\\* with mbstowcs()\n* Ensure the wide character string has length one\n* Ensure the first element numerically matches the original codepoint\n\nThe program reports any conversion errors, as well as whether the compiler\nenvironment defines `__STDC_ISO_10646__`.\n\n## Building\n\n* Install [ICU4C](http://site.icu-project.org/download/) library\n* Make:\n\n   ```sh\n   ./configure\n   make\n   ```\n* Run\n   ```sh\n   ./w\n   ```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbegriffs%2Fwchar-conformance","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fbegriffs%2Fwchar-conformance","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbegriffs%2Fwchar-conformance/lists"}