From a495cd581c268b96ad9034c4569293de1f9e3156 Mon Sep 17 00:00:00 2001 From: Feoramund <161657516+Feoramund@users.noreply.github.com> Date: Thu, 20 Mar 2025 14:43:54 -0400 Subject: [PATCH] Assert that `_Path_Separator` is 7-bit ASCII There are several places where this is assumed to be true, most visibly in `is_path_separator`, as it takes a `byte` argument. Note that the data type of `_Path_Separator` is a rune, which allows any Unicode value. --- core/os/os2/path.odin | 2 ++ 1 file changed, 2 insertions(+) diff --git a/core/os/os2/path.odin b/core/os/os2/path.odin index 9231307f5..7d177a85d 100644 --- a/core/os/os2/path.odin +++ b/core/os/os2/path.odin @@ -8,6 +8,8 @@ Path_Separator :: _Path_Separator // OS-Specific Path_Separator_String :: _Path_Separator_String // OS-Specific Path_List_Separator :: _Path_List_Separator // OS-Specific +#assert(_Path_Separator <= rune(0x7F), "The system-specific path separator rune is expected to be within the 7-bit ASCII character set.") + @(require_results) is_path_separator :: proc(c: byte) -> bool { return _is_path_separator(c)