rovka added a comment.

This passes on Windows on Arm if you add a forward declaration for  `class 
PassInstrumentation` here 
<https://github.com/llvm/llvm-project/blob/3e6cfc631b816144d1ddfb4bb9f84af43367835c/llvm/include/llvm/IR/PassInstrumentation.h#L61>.
 This is necessary because otherwise clang picks up the PassInstrumentation 
from MLIR instead of the PassInstrumentation defined lower in the file.

For reference, this is the error I was seeing before:

  
C:\Work\diana.picus\llvm-project\llvm\include\llvm/IR/PassInstrumentation.h(145,16):
 warning: unqualified friend declaration referring to type outside of the 
nearest enclosing namespace is a Microsoft extension; add a nested name 
specifier [-Wmicrosoft-unqualified-friend]
    friend class PassInstrumentation;
                 ^
                 ::mlir::
  
C:\Work\diana.picus\llvm-project\llvm\include\llvm/IR/PassInstrumentation.h(292,33):
 error: 'AnalysesClearedCallbacks' is a private member of 
'llvm::PassInstrumentationCallbacks'
        for (auto &C : Callbacks->AnalysesClearedCallbacks)
                                  ^
  
C:\Work\diana.picus\llvm-project\llvm\include\llvm/IR/PassInstrumentation.h(173,7):
 note: declared private here
        AnalysesClearedCallbacks;


Repository:
  rG LLVM Github Monorepo

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

https://reviews.llvm.org/D120568

_______________________________________________
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to