[PATCH] D137058: [Driver] [Modules] Support -fsave-std-c++-module-file (1/2)

David Blaikie via Phabricator via cfe-commits cfe-commits at lists.llvm.org
Thu Nov 3 17:00:30 PDT 2022


dblaikie added a comment.

> What was the objection to "-fc++-module-filename[=]" ?

I guess it reads a bit awkwardly when you aren't providing the filename/want the default filename?

> GCC has "-fmodule-only"

Hmm, I don't mind that too much (& as you say, '-fobject-only' - though that flag is maybe too vague?) - but it does mean we'd need a separate flag to name the .pcm output file, because that flag ('-fmodule-only') wouldn't be present in all cases where the pcm is generated, only when it's pcm-but-no-object. Maybe less "exclusionary" flag names and more explicit (like '-fbuild-the-binary-module' and '-fbuild-the-object'). I guess most C++ GCC options ( https://gcc.gnu.org/onlinedocs/gcc/Option-Summary.html ) don't include "C++" in them, but the modules ones mostly include "module".

We could get out in front, planning for the world in which BMIs are really only the interface (& whatever else we want to carry for optimizing /use/ of that interface, but not complete enough to be usable for generating the modules object) and use `-fmodule-interface[=]` (skipping the 'binary' part) and `-fmodule-implementation` or `-fmodule-object` (which could go either way - default on or off, but provide `-fno-module-object` to do the "generate PCM only")?

Only other minor thing might be singular V plural - some of Clang's flags are `-fmodules` and others are `-fmodule` - any sense of what's likely to work better? (be nice to unify/standardize on one or the other, I can see having variation there might make for frustrating usability trying to remember which is which)


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D137058/new/

https://reviews.llvm.org/D137058



More information about the cfe-commits mailing list