================ @@ -2164,6 +2164,12 @@ bool Driver::HandleImmediateArgs(const Compilation &C) { return false; } + if (C.getArgs().hasArg(options::OPT_print_library_module_manifest_path)) { + llvm::outs() << "module: =" ---------------- mordante wrote:
> I'd like there to be some distinction between "modules not present because > Clang was built without them" and "modules not present but expected to be > there" (maybe distro packagers split things and the modules package is > missing?). However that is hard to do and might be wrong. Currently stdlibc++ does not ship modules. I don't know how clang-18 will ever find them stdlibc++-15 since it's unknown whether that version will have modules nor do I know the name of their manifest file. Same for Clang and libc++, Clang has no idea whether libc++ was build with or without modules. They are build independently. So it would need to look at the version information of libc++ to detect whether it's libc++-18 or earlier. Earlier never has the manifest. IMO tool vendors should look at the output of this command; it either contains a path or a single error value. If it's the error value they should not attempt to build the std module. What would be the benefit of different errors @mathstuf ? Especially considering the above that it's hard to determine the proper error message. https://github.com/llvm/llvm-project/pull/76451 _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits