Ensure consistent representation of 64-bit integer constants

by providing custom definitions of `SDL_{S,U}INT64_C`.
Made possible by https://github.com/libsdl-org/SDL/pull/11315
This commit is contained in:
Susko3 2024-10-24 01:15:46 +01:00
parent 4831863919
commit 11228b67aa
3 changed files with 33 additions and 31 deletions

View File

@ -656,22 +656,22 @@ namespace SDL
public const uint SDL_MIN_UINT32 = ((uint)(0x00000000)); public const uint SDL_MIN_UINT32 = ((uint)(0x00000000));
[NativeTypeName("#define SDL_MAX_SINT64 SDL_SINT64_C(0x7FFFFFFFFFFFFFFF)")] [NativeTypeName("#define SDL_MAX_SINT64 SDL_SINT64_C(0x7FFFFFFFFFFFFFFF)")]
public const long SDL_MAX_SINT64 = (0x7FFFFFFFFFFFFFFFL); public const long SDL_MAX_SINT64 = 0x7FFFFFFFFFFFFFFFL;
[NativeTypeName("#define SDL_MIN_SINT64 ~SDL_SINT64_C(0x7FFFFFFFFFFFFFFF)")] [NativeTypeName("#define SDL_MIN_SINT64 ~SDL_SINT64_C(0x7FFFFFFFFFFFFFFF)")]
public const long SDL_MIN_SINT64 = ~(0x7FFFFFFFFFFFFFFFL); public const long SDL_MIN_SINT64 = ~0x7FFFFFFFFFFFFFFFL;
[NativeTypeName("#define SDL_MAX_UINT64 SDL_UINT64_C(0xFFFFFFFFFFFFFFFF)")] [NativeTypeName("#define SDL_MAX_UINT64 SDL_UINT64_C(0xFFFFFFFFFFFFFFFF)")]
public const ulong SDL_MAX_UINT64 = (0xFFFFFFFFFFFFFFFFUL); public const ulong SDL_MAX_UINT64 = 0xFFFFFFFFFFFFFFFFUL;
[NativeTypeName("#define SDL_MIN_UINT64 SDL_UINT64_C(0x0000000000000000)")] [NativeTypeName("#define SDL_MIN_UINT64 SDL_UINT64_C(0x0000000000000000)")]
public const ulong SDL_MIN_UINT64 = (0x0000000000000000UL); public const ulong SDL_MIN_UINT64 = 0x0000000000000000UL;
[NativeTypeName("#define SDL_MAX_TIME SDL_MAX_SINT64")] [NativeTypeName("#define SDL_MAX_TIME SDL_MAX_SINT64")]
public const long SDL_MAX_TIME = (0x7FFFFFFFFFFFFFFFL); public const long SDL_MAX_TIME = 0x7FFFFFFFFFFFFFFFL;
[NativeTypeName("#define SDL_MIN_TIME SDL_MIN_SINT64")] [NativeTypeName("#define SDL_MIN_TIME SDL_MIN_SINT64")]
public const long SDL_MIN_TIME = ~(0x7FFFFFFFFFFFFFFFL); public const long SDL_MIN_TIME = ~0x7FFFFFFFFFFFFFFFL;
[NativeTypeName("#define SDL_FLT_EPSILON 1.1920928955078125e-07F")] [NativeTypeName("#define SDL_FLT_EPSILON 1.1920928955078125e-07F")]
public const float SDL_FLT_EPSILON = 1.1920928955078125e-07F; public const float SDL_FLT_EPSILON = 1.1920928955078125e-07F;

View File

@ -540,79 +540,79 @@ namespace SDL
public static ReadOnlySpan<byte> SDL_PROP_GLOBAL_VIDEO_WAYLAND_WL_DISPLAY_POINTER => "SDL.video.wayland.wl_display"u8; public static ReadOnlySpan<byte> SDL_PROP_GLOBAL_VIDEO_WAYLAND_WL_DISPLAY_POINTER => "SDL.video.wayland.wl_display"u8;
[NativeTypeName("#define SDL_WINDOW_FULLSCREEN SDL_UINT64_C(0x0000000000000001)")] [NativeTypeName("#define SDL_WINDOW_FULLSCREEN SDL_UINT64_C(0x0000000000000001)")]
public const ulong SDL_WINDOW_FULLSCREEN = (0x0000000000000001UL); public const ulong SDL_WINDOW_FULLSCREEN = 0x0000000000000001UL;
[NativeTypeName("#define SDL_WINDOW_OPENGL SDL_UINT64_C(0x0000000000000002)")] [NativeTypeName("#define SDL_WINDOW_OPENGL SDL_UINT64_C(0x0000000000000002)")]
public const ulong SDL_WINDOW_OPENGL = (0x0000000000000002UL); public const ulong SDL_WINDOW_OPENGL = 0x0000000000000002UL;
[NativeTypeName("#define SDL_WINDOW_OCCLUDED SDL_UINT64_C(0x0000000000000004)")] [NativeTypeName("#define SDL_WINDOW_OCCLUDED SDL_UINT64_C(0x0000000000000004)")]
public const ulong SDL_WINDOW_OCCLUDED = (0x0000000000000004UL); public const ulong SDL_WINDOW_OCCLUDED = 0x0000000000000004UL;
[NativeTypeName("#define SDL_WINDOW_HIDDEN SDL_UINT64_C(0x0000000000000008)")] [NativeTypeName("#define SDL_WINDOW_HIDDEN SDL_UINT64_C(0x0000000000000008)")]
public const ulong SDL_WINDOW_HIDDEN = (0x0000000000000008UL); public const ulong SDL_WINDOW_HIDDEN = 0x0000000000000008UL;
[NativeTypeName("#define SDL_WINDOW_BORDERLESS SDL_UINT64_C(0x0000000000000010)")] [NativeTypeName("#define SDL_WINDOW_BORDERLESS SDL_UINT64_C(0x0000000000000010)")]
public const ulong SDL_WINDOW_BORDERLESS = (0x0000000000000010UL); public const ulong SDL_WINDOW_BORDERLESS = 0x0000000000000010UL;
[NativeTypeName("#define SDL_WINDOW_RESIZABLE SDL_UINT64_C(0x0000000000000020)")] [NativeTypeName("#define SDL_WINDOW_RESIZABLE SDL_UINT64_C(0x0000000000000020)")]
public const ulong SDL_WINDOW_RESIZABLE = (0x0000000000000020UL); public const ulong SDL_WINDOW_RESIZABLE = 0x0000000000000020UL;
[NativeTypeName("#define SDL_WINDOW_MINIMIZED SDL_UINT64_C(0x0000000000000040)")] [NativeTypeName("#define SDL_WINDOW_MINIMIZED SDL_UINT64_C(0x0000000000000040)")]
public const ulong SDL_WINDOW_MINIMIZED = (0x0000000000000040UL); public const ulong SDL_WINDOW_MINIMIZED = 0x0000000000000040UL;
[NativeTypeName("#define SDL_WINDOW_MAXIMIZED SDL_UINT64_C(0x0000000000000080)")] [NativeTypeName("#define SDL_WINDOW_MAXIMIZED SDL_UINT64_C(0x0000000000000080)")]
public const ulong SDL_WINDOW_MAXIMIZED = (0x0000000000000080UL); public const ulong SDL_WINDOW_MAXIMIZED = 0x0000000000000080UL;
[NativeTypeName("#define SDL_WINDOW_MOUSE_GRABBED SDL_UINT64_C(0x0000000000000100)")] [NativeTypeName("#define SDL_WINDOW_MOUSE_GRABBED SDL_UINT64_C(0x0000000000000100)")]
public const ulong SDL_WINDOW_MOUSE_GRABBED = (0x0000000000000100UL); public const ulong SDL_WINDOW_MOUSE_GRABBED = 0x0000000000000100UL;
[NativeTypeName("#define SDL_WINDOW_INPUT_FOCUS SDL_UINT64_C(0x0000000000000200)")] [NativeTypeName("#define SDL_WINDOW_INPUT_FOCUS SDL_UINT64_C(0x0000000000000200)")]
public const ulong SDL_WINDOW_INPUT_FOCUS = (0x0000000000000200UL); public const ulong SDL_WINDOW_INPUT_FOCUS = 0x0000000000000200UL;
[NativeTypeName("#define SDL_WINDOW_MOUSE_FOCUS SDL_UINT64_C(0x0000000000000400)")] [NativeTypeName("#define SDL_WINDOW_MOUSE_FOCUS SDL_UINT64_C(0x0000000000000400)")]
public const ulong SDL_WINDOW_MOUSE_FOCUS = (0x0000000000000400UL); public const ulong SDL_WINDOW_MOUSE_FOCUS = 0x0000000000000400UL;
[NativeTypeName("#define SDL_WINDOW_EXTERNAL SDL_UINT64_C(0x0000000000000800)")] [NativeTypeName("#define SDL_WINDOW_EXTERNAL SDL_UINT64_C(0x0000000000000800)")]
public const ulong SDL_WINDOW_EXTERNAL = (0x0000000000000800UL); public const ulong SDL_WINDOW_EXTERNAL = 0x0000000000000800UL;
[NativeTypeName("#define SDL_WINDOW_MODAL SDL_UINT64_C(0x0000000000001000)")] [NativeTypeName("#define SDL_WINDOW_MODAL SDL_UINT64_C(0x0000000000001000)")]
public const ulong SDL_WINDOW_MODAL = (0x0000000000001000UL); public const ulong SDL_WINDOW_MODAL = 0x0000000000001000UL;
[NativeTypeName("#define SDL_WINDOW_HIGH_PIXEL_DENSITY SDL_UINT64_C(0x0000000000002000)")] [NativeTypeName("#define SDL_WINDOW_HIGH_PIXEL_DENSITY SDL_UINT64_C(0x0000000000002000)")]
public const ulong SDL_WINDOW_HIGH_PIXEL_DENSITY = (0x0000000000002000UL); public const ulong SDL_WINDOW_HIGH_PIXEL_DENSITY = 0x0000000000002000UL;
[NativeTypeName("#define SDL_WINDOW_MOUSE_CAPTURE SDL_UINT64_C(0x0000000000004000)")] [NativeTypeName("#define SDL_WINDOW_MOUSE_CAPTURE SDL_UINT64_C(0x0000000000004000)")]
public const ulong SDL_WINDOW_MOUSE_CAPTURE = (0x0000000000004000UL); public const ulong SDL_WINDOW_MOUSE_CAPTURE = 0x0000000000004000UL;
[NativeTypeName("#define SDL_WINDOW_MOUSE_RELATIVE_MODE SDL_UINT64_C(0x0000000000008000)")] [NativeTypeName("#define SDL_WINDOW_MOUSE_RELATIVE_MODE SDL_UINT64_C(0x0000000000008000)")]
public const ulong SDL_WINDOW_MOUSE_RELATIVE_MODE = (0x0000000000008000UL); public const ulong SDL_WINDOW_MOUSE_RELATIVE_MODE = 0x0000000000008000UL;
[NativeTypeName("#define SDL_WINDOW_ALWAYS_ON_TOP SDL_UINT64_C(0x0000000000010000)")] [NativeTypeName("#define SDL_WINDOW_ALWAYS_ON_TOP SDL_UINT64_C(0x0000000000010000)")]
public const ulong SDL_WINDOW_ALWAYS_ON_TOP = (0x0000000000010000UL); public const ulong SDL_WINDOW_ALWAYS_ON_TOP = 0x0000000000010000UL;
[NativeTypeName("#define SDL_WINDOW_UTILITY SDL_UINT64_C(0x0000000000020000)")] [NativeTypeName("#define SDL_WINDOW_UTILITY SDL_UINT64_C(0x0000000000020000)")]
public const ulong SDL_WINDOW_UTILITY = (0x0000000000020000UL); public const ulong SDL_WINDOW_UTILITY = 0x0000000000020000UL;
[NativeTypeName("#define SDL_WINDOW_TOOLTIP SDL_UINT64_C(0x0000000000040000)")] [NativeTypeName("#define SDL_WINDOW_TOOLTIP SDL_UINT64_C(0x0000000000040000)")]
public const ulong SDL_WINDOW_TOOLTIP = (0x0000000000040000UL); public const ulong SDL_WINDOW_TOOLTIP = 0x0000000000040000UL;
[NativeTypeName("#define SDL_WINDOW_POPUP_MENU SDL_UINT64_C(0x0000000000080000)")] [NativeTypeName("#define SDL_WINDOW_POPUP_MENU SDL_UINT64_C(0x0000000000080000)")]
public const ulong SDL_WINDOW_POPUP_MENU = (0x0000000000080000UL); public const ulong SDL_WINDOW_POPUP_MENU = 0x0000000000080000UL;
[NativeTypeName("#define SDL_WINDOW_KEYBOARD_GRABBED SDL_UINT64_C(0x0000000000100000)")] [NativeTypeName("#define SDL_WINDOW_KEYBOARD_GRABBED SDL_UINT64_C(0x0000000000100000)")]
public const ulong SDL_WINDOW_KEYBOARD_GRABBED = (0x0000000000100000UL); public const ulong SDL_WINDOW_KEYBOARD_GRABBED = 0x0000000000100000UL;
[NativeTypeName("#define SDL_WINDOW_VULKAN SDL_UINT64_C(0x0000000010000000)")] [NativeTypeName("#define SDL_WINDOW_VULKAN SDL_UINT64_C(0x0000000010000000)")]
public const ulong SDL_WINDOW_VULKAN = (0x0000000010000000UL); public const ulong SDL_WINDOW_VULKAN = 0x0000000010000000UL;
[NativeTypeName("#define SDL_WINDOW_METAL SDL_UINT64_C(0x0000000020000000)")] [NativeTypeName("#define SDL_WINDOW_METAL SDL_UINT64_C(0x0000000020000000)")]
public const ulong SDL_WINDOW_METAL = (0x0000000020000000UL); public const ulong SDL_WINDOW_METAL = 0x0000000020000000UL;
[NativeTypeName("#define SDL_WINDOW_TRANSPARENT SDL_UINT64_C(0x0000000040000000)")] [NativeTypeName("#define SDL_WINDOW_TRANSPARENT SDL_UINT64_C(0x0000000040000000)")]
public const ulong SDL_WINDOW_TRANSPARENT = (0x0000000040000000UL); public const ulong SDL_WINDOW_TRANSPARENT = 0x0000000040000000UL;
[NativeTypeName("#define SDL_WINDOW_NOT_FOCUSABLE SDL_UINT64_C(0x0000000080000000)")] [NativeTypeName("#define SDL_WINDOW_NOT_FOCUSABLE SDL_UINT64_C(0x0000000080000000)")]
public const ulong SDL_WINDOW_NOT_FOCUSABLE = (0x0000000080000000UL); public const ulong SDL_WINDOW_NOT_FOCUSABLE = 0x0000000080000000UL;
[NativeTypeName("#define SDL_WINDOWPOS_UNDEFINED_MASK 0x1FFF0000u")] [NativeTypeName("#define SDL_WINDOWPOS_UNDEFINED_MASK 0x1FFF0000u")]
public const uint SDL_WINDOWPOS_UNDEFINED_MASK = 0x1FFF0000U; public const uint SDL_WINDOWPOS_UNDEFINED_MASK = 0x1FFF0000U;

View File

@ -266,6 +266,8 @@ base_command = [
"--define-macro", "--define-macro",
"SDL_FUNCTION_POINTER_IS_VOID_POINTER", "SDL_FUNCTION_POINTER_IS_VOID_POINTER",
"SDL_SINT64_C(c)=c ## LL",
"SDL_UINT64_C(c)=c ## ULL",
"--additional", "--additional",
"--undefine-macro=_WIN32", "--undefine-macro=_WIN32",