rnk added a comment. This looks good to me. I had one suggestion, and I would also like to hear from another reviewer who has more ownership over VFS.
================ Comment at: llvm/include/llvm/Support/VirtualFileSystem.h:657 + // slashes to match backslashes (and vice versa). + bool pathComponentMatches(llvm::StringRef lhs, llvm::StringRef rhs) const { + if ((CaseSensitive ? lhs.equals(rhs) : lhs.equals_lower(rhs))) ---------------- IIUC, this method receives path components, which must not contain path separators, or the root path component, `\` or `/`. Is there some way to express that invariant? Maybe just comment like "A path component must not contain path separators, unless it is the root component, which is represented as a single path separator," or an assert with the same effect. ================ Comment at: llvm/lib/Support/VirtualFileSystem.cpp:1666 // paths become globally default. if (Start->equals(".")) ++Start; ---------------- Unrelated, but I wonder if this needs to be `while` instead of `if` to handle repeated `foo/./././bar`. CHANGES SINCE LAST ACTION https://reviews.llvm.org/D69958/new/ https://reviews.llvm.org/D69958 _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits