zixuw added inline comments.
================ Comment at: clang/lib/ExtractAPI/ExtractAPIConsumer.cpp:134 + if (!SpelledFilename.empty()) + return SpelledFilename.str(); + ---------------- One problem I can see in this right now is that there might be multiple headermaps that together construct a chain of mapping, for example ``` // A.hmap Header.h -> Product/Header.h // B.hmap Product/Header.h -> /Absolute/path/to/Header.h ``` Then this iteration would conclude on using `Product/Header.h` and missed the first mapping (if the command line goes `clang -extract-api -I A.hmap -I B.hmap ...`). It's also possible that a headermap and a search path together resolve the header. For example: ``` //A.hmap Header.h -> Product/Header.h // Invocation: clang -extract-api /Some/Path/to/Product/Header.h -I A.hmap -I /Some/path/to/ ``` I think we need to keep records and iterate backwards on the search paths again to get the full reverse lookup Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D123831/new/ https://reviews.llvm.org/D123831 _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits