dexonsmith added a comment. In D116659#3241727 <https://reviews.llvm.org/D116659#3241727>, @benlangmuir wrote:
>> I don't know, I'm a bit skeptical we want to make it so easy to ignore >> errors so easily. I'd rather require clients to explicitly ignore the error. > > That's my gut feeling too. I suspect a bunch of this code should be > explicitly ignoring `ENOENT`, but not ignoring e.g. `EACCESS`, `EMFILE `, > etc. It seems like a bug that we're ignoring all errors right now. > > If we really want to ignore all the iteration errors, we should do that > consistently in llvm::sys::fs not just the wrapper in the VFS layer. If the main goal is to enable range-based-for, a simpler option than I suggested previously might be to have an iterator that dereferences to `ErrorOr<FileEntry>`. Could be an iterator adaptor that takes any `increment(EC)`-style iterator (either `llvm::sys::fs` or `llvm::vfs`). Maybe `dir_range` could return `ErrorOr<iterator_range<...>>` to expose the error-on-construction explicitly as well. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D116659/new/ https://reviews.llvm.org/D116659 _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits