PATCH: Expose the 'file' that is associated with a compile database command

Manuel Klimek via cfe-commits cfe-commits at lists.llvm.org
Thu Sep 10 01:48:53 PDT 2015


@@ -179,11 +185,13 @@ public:
   /// \param Directory The base directory used in the
FixedCompilationDatabase.
   static FixedCompilationDatabase *loadFromCommandLine(int &Argc,
                                                        const char *const
*Argv,
-                                                       Twine Directory =
".");
+                                                       Twine Directory =
".",
+                                                       Twine File =
Twine());

A fixed compilation database returns the same command lines for all files,
thus having a file in the function seems strange.

What exactly is the use case? So far, the compilation database has been
designed for 2 use cases:
1. for a file, get the compile commands; the user already knows the file,
no need to get the file
2. get all compile commands; for that, we have the getAllFiles() method, so
a user can get all known files (for compilation databases that support
that), and then get the compile command line.

Thoughts?
/Manuel

On Wed, Sep 9, 2015 at 9:36 PM Argyrios Kyrtzidis <kyrtzidis at apple.com>
wrote:

> Hi,
>
> The attached patch exposes the ‘file’ entry in a compilation database
> command, via the CompileCommand structure.
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/cfe-commits/attachments/20150910/7d289e19/attachment.html>


More information about the cfe-commits mailing list