struct
let check cmd cmdname ?(nullglob=false) (patt:filexpr) =
let wrapper x = make ~at:Treat.quote ~ot:Treat.is_true cmd ~script:true ~args:(Some x) () in
match (Files.glob ~null:nullglob patt) with
| [] -> failwith (cmdname^": argument '"^patt^"' globs to nothing")
| l -> List.for_all wrapper l
;;
end