[clang] [clang][deps] Fix dependency scanning with -working-directory (PR #84525)

2024-03-12 Thread Ben Langmuir via cfe-commits
https://github.com/benlangmuir closed https://github.com/llvm/llvm-project/pull/84525 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang][deps] Fix dependency scanning with -working-directory (PR #84525)

2024-03-11 Thread Jan Svoboda via cfe-commits
https://github.com/jansvoboda11 approved this pull request. LGTM, thanks! https://github.com/llvm/llvm-project/pull/84525 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang][deps] Fix dependency scanning with -working-directory (PR #84525)

2024-03-11 Thread Ben Langmuir via cfe-commits
https://github.com/benlangmuir updated https://github.com/llvm/llvm-project/pull/84525 >From 24e2454b90c2aaabb999e84240d5b2263ff01719 Mon Sep 17 00:00:00 2001 From: Ben Langmuir Date: Fri, 8 Mar 2024 09:53:42 -0800 Subject: [PATCH] [clang][deps] Fix dependency scanning with -working-directory

[clang] [clang][deps] Fix dependency scanning with -working-directory (PR #84525)

2024-03-11 Thread Ben Langmuir via cfe-commits
benlangmuir wrote: I don't think there's a difference we can test for here -- the VFS WD shouldn't be modified after the driver sets it and before the FM is used here, so it would be identical to `-working-directory` during the critical window. But I agree recreating the FileManager is

[clang] [clang][deps] Fix dependency scanning with -working-directory (PR #84525)

2024-03-11 Thread Jan Svoboda via cfe-commits
jansvoboda11 wrote: To clarify, I'm not concerned about the general issue of `FileManager` and VFS working directory mismatch. What I'm wary of is that this patch changes `FileSystemOptions` after creating and (potentially) using `FileManager` for a while. It uses relative paths as cache

[clang] [clang][deps] Fix dependency scanning with -working-directory (PR #84525)

2024-03-11 Thread Ben Langmuir via cfe-commits
benlangmuir wrote: > I can see a situation where we ask FileManager about the same relative path > before and after setting the parsed FileSystemOptions. The second call would > blindly return the cached result, effectively ignoring -working-directory for > that file. The driver calls

[clang] [clang][deps] Fix dependency scanning with -working-directory (PR #84525)

2024-03-11 Thread Jan Svoboda via cfe-commits
jansvoboda11 wrote: Do you have any concerns about the consistency of `FileManager` caches? I can see a situation where we ask `FileManager` about the same relative path _before_ and _after_ setting the parsed `FileSystemOptions`. The second call would blindly return the cached result,

[clang] [clang][deps] Fix dependency scanning with -working-directory (PR #84525)

2024-03-08 Thread via cfe-commits
llvmbot wrote: @llvm/pr-subscribers-clang Author: Ben Langmuir (benlangmuir) Changes Stop overriding -working-directory to CWD during argument parsing, which should no longer necessary after we set the VFS working directory, and set FSOpts correctly after parsing arguments so that

[clang] [clang][deps] Fix dependency scanning with -working-directory (PR #84525)

2024-03-08 Thread Ben Langmuir via cfe-commits
https://github.com/benlangmuir created https://github.com/llvm/llvm-project/pull/84525 Stop overriding -working-directory to CWD during argument parsing, which should no longer necessary after we set the VFS working directory, and set FSOpts correctly after parsing arguments so that