[PATCH] D54975: [analyzer] Generalised the SMT state constraints

Michael Platings via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Fri Feb 8 07:00:59 PST 2019


michaelplatings added inline comments.


================
Comment at: cfe/trunk/include/clang/StaticAnalyzer/Core/PathSensitive/SMTConstraintManager.h:22
+    std::pair<clang::ento::SymbolRef, const clang::ento::SMTExpr *>>
+    ConstraintSMTTy;
+REGISTER_TRAIT_WITH_PROGRAMSTATE(ConstraintSMT, ConstraintSMTTy)
----------------
This does not compile with Visual Studio 2015:

```
1>  SMTConstraintManager.cpp
1>StaticAnalyzer/Core/PathSensitive/SMTConstraintManager.h(23): error C2872: 'ConstraintSMTTy': ambiguous symbol
1>  StaticAnalyzer/Core/PathSensitive/SMTConstraintManager.h(22): note: could be 'llvm::ImmutableSet<std::pair<clang::ento::SymbolRef,const llvm::SMTExpr *>,llvm::ImutContainerInfo<ValT>> ConstraintSMTTy'
1>    with
1>    [
1>        ValT=std::pair<clang::ento::SymbolRef,const llvm::SMTExpr *>
1>    ]
1>  StaticAnalyzer/Core/PathSensitive/SMTConstraintManager.h(23): note: or       '`anonymous-namespace'::ConstraintSMTTy'
```

It could be fixed by changing `ConstraintSMTTy` to e.g. `ConstraintSMTType`


Repository:
  rL LLVM

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

https://reviews.llvm.org/D54975





More information about the llvm-commits mailing list