diff --git a/bash-5.1/r_execute_cmd/src/lib.rs b/bash-5.1/r_execute_cmd/src/lib.rs index 5eb1022b033fd28b8f7bdd87dc1e58103ce49477..02d7a052b463647207b0aecea9c627be3aab31f4 100644 --- a/bash-5.1/r_execute_cmd/src/lib.rs +++ b/bash-5.1/r_execute_cmd/src/lib.rs @@ -2039,8 +2039,54 @@ macro_rules! nameref_p { }; } +#[macro_export] +macro_rules! nameref_cell { + ($var:expr) => { + (*$var).value + }; +} + +#[macro_export] +macro_rules! att_readonly { + () => { + 0x0000002 + }; +} + +#[macro_export] +macro_rules! readonly_p { + ($var:expr) => { + (*$var).attributes & att_readonly!() + }; +} + +#[macro_export] +macro_rules! att_noassign { + () => { + 0x0004000 + }; +} + +#[macro_export] +macro_rules! noassign_p { + ($var:expr) => { + (*$var).attributes & 0x4000 as libc::c_int + }; +} +#[macro_export] +macro_rules! att_array { + () => { + 0x0000004 + }; +} +#[macro_export] +macro_rules! array_p { + ($var:expr) => { + (*$var).attributes & att_array!() + }; +}