[PATCH] Some infrastructure work for virtual file system (now on phab)

Douglas Gregor dgregor at apple.com
Wed Feb 12 14:22:46 PST 2014


On Feb 12, 2014, at 2:21 PM, Rafael Ávila de Espíndola <rafael.espindola at gmail.com> wrote:

> 
> 
> ================
> Comment at: include/clang/Basic/FileManager.h:122
> @@ -121,2 +121,3 @@
> class FileManager : public RefCountedBase<FileManager> {
> +  IntrusiveRefCntPtr<AbstractFileSystem> FS;
>   FileSystemOptions FileSystemOpts;
> ----------------
> Why is the reference count necessary? Given its nature I would expect the FS to outlive the file manger, in which case the FileManager could have just a pointer to the FileSystem.


The FS is likely to get shared among a number of FileManagers in different compiler instances within a thread. Yes, we could try to establish and maintain relationships among these, but it’s simpler and costs us effectively nothing to make this ref-counted.

	- Doug





More information about the cfe-commits mailing list