[PATCH] D118070: Make lld-link work in a non-MSVC shell

Nico Weber via Phabricator via cfe-commits cfe-commits at lists.llvm.org
Fri Feb 11 13:25:29 PST 2022


thakis added inline comments.


================
Comment at: llvm/include/llvm/Support/MSVCPaths.h:15
+#include "llvm/Option/ArgList.h"
+#include "llvm/Support/VirtualFileSystem.h"
+#include <string>
----------------
aprantl wrote:
> This introduces a cyclic dependency that breaks the `-DLLVM_ENABLE_MODULES=1`  build.
> ```
> /Volumes/Data/llvm-project/llvm/include/llvm/Option/Arg.h:17:10: fatal error: cyclic dependency in module 'LLVM_Utils': LLVM_Utils -> LLVM_Option -> LLVM_Utils
> #include "llvm/ADT/SmallVector.h"
>          ^
> While building module 'LLVM_Utils' imported from /Volumes/Data/llvm-project/llvm/lib/Support/ARMBuildAttrs.cpp:9:
> In file included from <module-includes>:195:
> /Volumes/Data/llvm-project/llvm/include/llvm/Support/MSVCPaths.h:14:10: fatal error: could not build module 'LLVM_Option'
> #include "llvm/Option/ArgList.h"
>  ~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~
> /Volumes/Data/llvm-project/llvm/lib/Support/ARMBuildAttrs.cpp:9:10: fatal error: could not build module 'LLVM_Utils'
> #include "llvm/Support/ARMBuildAttributes.h"
>  ~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> 3 errors generated.
> ```
Ah yeah, support can't depend on Option. Maybe the easiest fix is to just move this to its own library like maskray suggested. Then this isn't a problem.


Repository:
  rG LLVM Github Monorepo

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

https://reviews.llvm.org/D118070



More information about the cfe-commits mailing list