From c3d898044d5ce4d60c771e3818b30a9ef9d48bdf Mon Sep 17 00:00:00 2001 From: "Luke T. Shumaker" Date: Mon, 14 Apr 2025 07:46:18 -0600 Subject: lib9p_core: Integrate linux-errno.h into 2010-9P2000.L.9p --- lib9p/idl/__init__.py | 6 ++++++ 1 file changed, 6 insertions(+) (limited to 'lib9p/idl/__init__.py') diff --git a/lib9p/idl/__init__.py b/lib9p/idl/__init__.py index 154e157..3133cc4 100644 --- a/lib9p/idl/__init__.py +++ b/lib9p/idl/__init__.py @@ -647,6 +647,7 @@ def re_string(grpname: str) -> str: re_line_version = f"version\\s+{re_string('version')}" re_line_import = f"from\\s+(?P\\S+)\\s+import\\s+(?P{re_impname}(?:\\s*,\\s*{re_impname})*)" re_line_num = f"num\\s+(?P{re_symname})\\s*=\\s*(?P{re_priname})" +re_line_num_ = f"num\\s+(?P{re_symname})\\s*\\+=\\s*{re_string('spec')}" re_line_bitfield = f"bitfield\\s+(?P{re_symname})\\s*=\\s*(?P{re_priname})" re_line_bitfield_ = f"bitfield\\s+(?P{re_symname})\\s*\\+=\\s*{re_string('spec')}" re_line_struct = ( @@ -738,6 +739,11 @@ def parse_file( if num.typname in env: raise ValueError(f"duplicate type name {num.typname!r}") env[num.typname] = num + prev = num + elif m := re.fullmatch(re_line_num_, line): + num = get_type(env, m.group("name"), Number) + parse_numspec(env, version, num, m.group("spec")) + prev = num elif m := re.fullmatch(re_line_bitfield, line): prim = env[m.group("prim")] -- cgit v1.2.3-2-g168b