__struct_members_copy
__struct_members_copy(COPY_MEMSET, expr, expr->left, zero_expr());
__struct_members_copy(COPY_NORMAL, expr, expr->left, expr->right);
__struct_members_copy(COPY_MEMSET, expr, remove_addr(buf), val);
__struct_members_copy(COPY_MEMCPY, expr, remove_addr(dest), remove_addr(src));
__struct_members_copy(COPY_MEMCPY, expr, left, arg);
__struct_members_copy(COPY_MEMCPY, expr, remove_addr(dest), NULL);
__struct_members_copy(COPY_MEMCPY, expr, remove_addr(arg), NULL);
__struct_members_copy(COPY_MEMCPY, expr, expr->unop, NULL);
__struct_members_copy(COPY_MEMSET, expr, remove_addr(arg), zero_expr());
__struct_members_copy(COPY_MEMCPY, expr, remove_addr(arg), NULL);