Naming flag for specifying the output file name for Binary Module Interface files

Jonathan Wakely jwakely.gcc@gmail.com
Wed Dec 7 01:45:58 GMT 2022


On Wed, 7 Dec 2022, 00:36 Nathan Sidwell via Gcc, <gcc@gcc.gnu.org> wrote:

> On 12/6/22 16:03, David Blaikie wrote:
> > Over in https://reviews.llvm.org/D137059 we're discussing the naming
> > of a clang flag - would be good to have it be consistent with GCC.
> >
> > The functionality is to name the BMI (.pcm in Clang's parlance) output
> > file when compiling a C++20 module.
> >
> > Current proposal is to use `-fsave-std-cxx-module-file=` which is
> > certainly precise, but maybe a bit verbose. Clang has some other flags
> > related to modules that skip the std/cxx parts, and are just
> > `-fmodule-*` or `-fmodules-*`, so there's some precedent for that too.
> >
> > Do GCC folks have any veto votes (is the currently proposed name
> > especially objectionable/wouldn't be acceptable in GCC) or preferences
> > (suggestions to add to the pool)?
>
> I think the suggested option name is problematic for a number of
> additional reasons:
>
> 1) 'save' -- does it *cause* the bmi to be saved, or is that actually
> controlled
> by other options?  (I suspect the latter)
>
> 2) 'std' -- why is this there.  There's only one C++ std, with different
> variants thereof being temporally selectable.
>
> 3) 'cxx' -- why not 'c++'?  Let's not let this transliteration of + to x
> get
> into the options -- it hasn't in '-std=c++20' for example.
>
> Might I suggest something more like '-fmodule-output='?  That collates
> nicely
> with other -fmodule-$FOO options, and the 'output' part is similar to the
> mnemonic '-o' for the regular output file naming.
>

That's also much shorter and easier to remember than the five(!) words in
the original suggestion.


More information about the Gcc mailing list