ForNeVeR / ForNeVeR/Cesium

Wide architecture: `nint`/`nuint` should become synonymous to `long`

Open
#495 0 comments 0 reactions 0 assignees View on GitHub
area:cil-interop good-first-issue kind:feature status:help-wanted
Dominant language
C#
Stars
451
Forks
49
Avg merge
13h 59m
Merged PRs (30d)
6

Description

Wide architecture set in Cesium supports same type sizes and layouts for any hardware platforms.

The only problem remaining is that it's not the same for `nint` / `nuint`: these types will currently compile to `IntPtr` and `UIntPtr`, platform-dependent.

We should improve the spec and make them synonymous to `long` and `ulong` on the **wide** architecture.

Contributor guide

Open the contributing guide

Research direction

No files or tests are named. Start by locating the wide-architecture specification and the type-mapping entry point for nint and nuint, then compare their current IntPtr and UIntPtr handling with long and ulong. Done means the wide architecture consistently treats both types as their corresponding fixed-width aliases and the relevant compiler checks pass.

Written by the indexing model from the issue text.

Assessment

Tech stack
csharp
Domain
compilers
Issue type
Feature
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.