Implement deterministic int64 wrapping arithmetic

This commit is contained in:
2026-10-27 16:20:48 +01:00
parent 0e26fc4125
commit 62f81aea89
5 changed files with 813 additions and 314 deletions
+748 -289
View File
File diff suppressed because it is too large Load Diff
+4 -2
View File
@@ -22,7 +22,7 @@
#define JSON_HEX_QUOT 0x08 /* All " are converted to \u0022. */
#define JSON_FORCE_OBJECT 0x10 /* Outputs an object rather than an array */
#define JSON_NUMERIC_CHECK 0x20 /* Encodes numeric strings as numbers. */
#define JSON_BIGINT_AS_STRING 0x40 /* Not used */
#define JSON_BIGINT_AS_STRING 0x40 /* Decode big integers as strings. */
#define JSON_PRETTY_PRINT 0x80 /* Use whitespace in returned data to format it.*/
#define JSON_UNESCAPED_SLASHES 0x100 /* Don't escape '/' */
#define JSON_UNESCAPED_UNICODE 0x200 /* Not used */
@@ -54,6 +54,8 @@ struct json_private_data {
int isFirst; /* True if first encoded entry */
int iFlags; /* JSON encoding flags */
int nRecCount; /* Recursion count */
sxi32 bObject; /* True if the current container is encoded as an object */
sxi32 bAbort; /* True if the encoding process was aborted */
};
/*
@@ -127,4 +129,4 @@ static const ph7_builtin_func jsonFuncList[] = {
{"json_decode", vm_builtin_json_decode }
};
#endif
#endif