feat(job-array-one-based-index): bounded job-identity and element-selection parser in libxce (task 1.1)

parse_jobsel() parses c-a-ts-seq with an optional [k] or [a-b] under a
fixed grammar and check order (syntax, field widths, array-identity
alignment, element bound, reversed range), saturating digits so an
oversized number cannot wrap; plus is_array_tag(), jobsel_element_id(),
jobsel_strerror() and JOBID_FIELD_MAX_* constants. The selection-cases
conformance table runs in the libxce suite.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
This commit is contained in:
Rongsong Shen 2026-10-01 09:01:57 +00:00
parent 590860f73d
commit 6e6c599d27
Signed by untrusted user: rshen
GPG key ID: 80533536B0EB651C
6 changed files with 501 additions and 1 deletions

View file

@ -13,6 +13,7 @@ extern void test_error(void);
extern void test_utils(void);
extern void test_config(void);
extern void test_idgen(void);
extern void test_jobsel(void);
extern void test_preason(void);
extern void test_ordq(void);
extern void test_delay(void);
@ -136,6 +137,7 @@ int main(int argc, char* argv[])
UNITY_BEGIN();
TEST(test_config);
TEST(test_idgen);
TEST(test_jobsel);
TEST(test_ht_string);
TEST(test_ht_int);
TEST(test_zarray);