-
Notifications
You must be signed in to change notification settings - Fork 43
Open
Labels
area:stdlibC standard library implementationC standard library implementationkind:bugSomething isn't workingSomething isn't workingstatus:help-wantedOpen for contributorsOpen for contributors
Description
See this code:
Cesium/Cesium.Runtime/StdIoFunctions.cs
Lines 219 to 227 in baff13b
nint pointerValue = ((nint*)varargs)[consumedArgs]; | |
string pointerValueString = pointerValue.ToString("X"); | |
streamWriter.Write(pointerValueString); | |
consumedBytes += pointerValueString.Length; | |
consumedArgs++; | |
break; | |
case "x": | |
case "X": | |
nuint hexadecimalValue = ((nuint*)varargs)[consumedArgs]; |
varargs
is casted to a pointer to nint
or nuint
.
These types have different sizes on different platforms, while our current vararg
convention is that we pass an array of 8-byte-sized items (doubles, longs or pointers).
We should also figure out whether it's currently called correctly.
Metadata
Metadata
Assignees
Labels
area:stdlibC standard library implementationC standard library implementationkind:bugSomething isn't workingSomething isn't workingstatus:help-wantedOpen for contributorsOpen for contributors