CONVERT
CONVERT(L9P_OTRUNC, O_TRUNC);
CONVERT(L9P_L_O_EXCL, O_EXCL);
CONVERT(L9P_L_O_TRUNC, O_TRUNC);
CONVERT(L9P_L_O_DIRECTORY, O_DIRECTORY);
CONVERT(L9P_L_O_APPEND, O_APPEND);
CONVERT(L9P_L_O_NONBLOCK, O_NONBLOCK);
#define SIGNED(op) CONVERT(op, 1)
#define UNSIGNED(op) CONVERT(op, 0)
switch (CONVERT(expr->op,is_signed)) {