[FIX] Apparently 0b isn't valid C99

This commit is contained in:
LDA 2024-09-21 13:48:09 +02:00
commit b9954c06ce
2 changed files with 13 additions and 25 deletions

View file

@ -72,18 +72,6 @@ Main(Array *args, HashMap *env)
start = UtilTsMillis();
{
Unistr *s = UnistrCreate("Array 日本語🌋");
size_t i;
for (i = 0; i < UnistrSize(s); i++)
{
uint32_t cp = UnistrGetch(s, i);
Log(LOG_INFO, "%X", cp);
}
UnistrFree(s);
}
memset(&conf, 0, sizeof(conf));
Log(LOG_INFO,
"%s - v%s[%s] (Cytoplasm %s)",

View file

@ -39,7 +39,7 @@ UTFIsN(char *off, size_t available, int n, uint8_t pc)
for (i = 0; i < n - 1; i++)
{
if ((offu[i+1] >> 6) != 0b10)
if ((offu[i+1] >> 6) != 0x2)
{
return false;
}
@ -74,10 +74,10 @@ UnistrCreate(char *src)
UnistrAddch(str, byte & 0x7F);
continue;
}
else if (UTFIsN(&src[i], available, 2, 0b110))
else if (UTFIsN(&src[i], available, 2, 0x06))
{
char a = src[i+0] & 0b00011111;
char b = src[i+1] & 0b00111111;
char a = src[i+0] & 0x1F;
char b = src[i+1] & 0x3F;
uint32_t u = (a << (6 * 1)) | b;
/* Overlongs are errors. */
@ -91,11 +91,11 @@ UnistrCreate(char *src)
i += 2 - 1;
continue;
}
else if (UTFIsN(&src[i], available, 3, 0b1110))
else if (UTFIsN(&src[i], available, 3, 0x0E))
{
char a = src[i+0] & 0b00001111;
char b = src[i+1] & 0b00111111;
char c = src[i+2] & 0b00111111;
char a = src[i+0] & 0x0F;
char b = src[i+1] & 0x3F;
char c = src[i+2] & 0x3F;
uint32_t u =
(a << (6 * 2)) |
(b << (6 * 1)) |
@ -112,12 +112,12 @@ UnistrCreate(char *src)
i += 3 - 1;
continue;
}
else if (UTFIsN(&src[i], available, 4, 0b11110))
else if (UTFIsN(&src[i], available, 4, 0x1E))
{
char a = src[i+0] & 0b00000111;
char b = src[i+1] & 0b00111111;
char c = src[i+2] & 0b00111111;
char d = src[i+3] & 0b00111111;
char a = src[i+0] & 0x07;
char b = src[i+1] & 0x3F;
char c = src[i+2] & 0x3F;
char d = src[i+3] & 0x3F;
uint32_t u =
(a << (6 * 3)) |
(b << (6 * 2)) |